Java常用类库--StringBuffer:append、insert、reverse、replace、subString、delete、indexOf

1、认识StringBuffer

1.1字符串连接 操作append

append方法返回StringBuffer类的实例化类对象。

public class StringBufferDemo01{
	public static void main(String args[]){
		StringBuffer buf = new StringBuffer() ;	// 声明StringBuffer对象
		buf.append("Hello ") ;					// 向StringBuffer中添加内容
		buf.append("World").append("!!!") ;		// 可以连续调用append()方法
		buf.append("\n") ;						// 添加一个转义字符
		buf.append("数字 = ").append(1).append("\n") ;	// 添加数字
		buf.append("字符 = ").append('C').append("\n");	 // 添加字符
		buf.append("布尔 = ").append(true) ;	// 添加布尔值
		System.out.println(buf) ;			// 直接输出对象,调用toString()
	}
};

验证StringBuffer的内容可以修改,通过引用传递的方式来完成。

public class StringBufferDemo02{
	public static void main(String args[]){
		StringBuffer buf = new StringBuffer() ;	// 声明StringBuffer对象
		buf.append("Hello ") ;
		fun(buf) ;		// 传递StringBuffer内容
		System.out.println(buf) ;	// 打印内容
	}
	public static void fun(StringBuffer s){		// 接收StringBuffer引用
		s.append("MLDN ").append("LiXingHua") ;	// 修改StringBuffer的内容
	}
};

1.2在任意位置处为StringBuffer添加内容insert

public class StringBufferDemo03{
	public static void main(String args[]){
		StringBuffer buf = new StringBuffer() ;	// 声明StringBuffer对象
		buf.append("World!!") ;		// 添加内容
		buf.insert(0,"Hello ") ;		// 在第一个内容之前添加内容
		System.out.println(buf) ;
		buf.insert(buf.length(),"MLDN~") ;	// 在最后添加内容
		System.out.println(buf) ;
	}
};

1.3字符串反转操作reverse

public class StringBufferDemo04{
	public static void main(String args[]){
		StringBuffer buf = new StringBuffer() ;	// 声明StringBuffer对象
		buf.append("World!!") ;		// 添加内容
		buf.insert(0,"Hello ") ;		// 在第一个内容之前添加内容
		String str = buf.reverse().toString() ;	// 将内容反转后变为String类型
		System.out.println(str) ;		// 将内容输出
	}
};

1.4替换指定位置的内容replace

public class StringBufferDemo05{
	public static void main(String args[]){
		StringBuffer buf = new StringBuffer() ;	// 声明StringBuffer对象
		buf.append("Hello ").append("World!!") ;		// 向StringBuffer添加内容
		buf.replace(6,11,"LiXingHua") ;		// 将world的内容替换
		System.out.println("内容替换之后的结果:" + buf) ;	// 输出内容
	}
};

1.5字符串截取subString

public class StringBufferDemo06{
	public static void main(String args[]){
		StringBuffer buf = new StringBuffer() ;	// 声明StringBuffer对象
		buf.append("Hello ").append("World!!") ;		// 向StringBuffer添加内容
		buf.replace(6,11,"LiXingHua") ;		// 将world的内容替换
		String str = buf.substring(6,15) ;	// 截取指定范围的内容
		System.out.println("内容截取之后的结果:" + str) ;	// 输出内容:LiXingHua
	}
};

1.6字符串删除delete

public class StringBufferDemo07{
	public static void main(String args[]){
		StringBuffer buf = new StringBuffer() ;	// 声明StringBuffer对象
		buf.append("Hello ").append("World!!") ;		// 向StringBuffer添加内容
		buf.replace(6,11,"LiXingHua") ;		// 将world的内容替换
		String str = buf.delete(6,15).toString() ;	// 删除指定范围中的内容
		System.out.println("删除之后的结果:" + str) ;	// 输出内容
	}
};

1.7查找指定位置的内容是否存在indexOf

public class StringBufferDemo08{
	public static void main(String args[]){
		StringBuffer buf = new StringBuffer() ;	// 声明StringBuffer对象
		buf.append("Hello ").append("World!!") ;		// 向StringBuffer添加内容
		if(buf.indexOf("Hello")==-1){
			System.out.println("没有查找到指定的内容") ;
		}else{	// 不为01表示查找到内容
			System.out.println("可以查找到指定的内容") ;
		}
	}
};

2、StringBuffer类的应用

public class StringBufferDemo09{
	public static void main(String args[]){
		String str1 = "LiXingHua" ;
		for(int i=0;i<100;i++){
			str1 += i ;		// 不断修改String的内存引用,性能低
		}
		System.out.println(str1) ;
	}
};
public class StringBufferDemo10{
	public static void main(String args[]){
		StringBuffer buf = new StringBuffer() ;
		buf.append("LiXingHua") ;
		for(int i=0;i<100;i++){
			buf.append(i);		// StringBuffer可以修改,性能高
		}
		System.out.println(buf) ;
	}
};

凡是需要频繁修改字符串内容的时候,都要使用StringBuffer类来完成。

时间: 2024-11-19 01:45:03

Java常用类库--StringBuffer:append、insert、reverse、replace、subString、delete、indexOf的相关文章

Guava v20.0-rc1,Google 的 Java 常用类库

Guava v20.0-rc1 发布了,Google 的 Java 常用类库.该版本主要更新内容是设置版本号为20.0 RC1. 详细改进内容请看:https://github.com/google/guava/compare/v20.0-rc1...master 下载地址: Source code (zip) Source code (tar.gz) Guava 中文是石榴的意思,该项目是 Google 的一个开源项目,包含许多 Google 核心的 Java 常用库. 目前主要包含: com

JAVA常用类库简介(转)

Java编程语言中为方便学习者学习,编制了许多类,这些类已经经过测试,都是我们编程的基础.如果不利用这些已存在的类,我们的编程工作将变得异常复杂并且效率低下.所以我们应尽可能多的掌握Java基本类库的内容.类库中的类按照其用途归属于不同的包中. 1.java.lang包 java.lang包 是Java中最常用的包,程序不需要注入,就可以使用该包中的类,利用包中的类可以设计最基本的Java程序. 2.java.awt包 java.awt包中的类提供了图形界面的创建方法,包括按钮.文本框.列表框.

Google的Java常用类库 Guava

Guava 中文是石榴的意思,该项目是 Google 的一个开源项目,包含许多 Google 核心的 Java 常用库. 1. 基本工具 [Basic utilities] 让使用Java语言变得更舒适 1.1 使用和避免null:null是模棱两可的,会引起令人困惑的错误,有些时候它让人很不舒服.很多Guava工具类用快速失败拒绝null值,而不是盲目地接受 1.2 前置条件: 让方法中的条件检查更简单 1.3 常见Object方法: 简化Object方法实现,如hashCode()和toSt

Java常用类库--实例操作--取得当前日期

在开发中经常需要取得日期,而且每次取得日期的时候代码都会重复,所以既然是重复的代码就可以将其定义成一个类,以方便重复调用,但是在操作的时候有一点土鳖需要注意:如果月份是1月,则应该显示01,但是如果是01的话,则数字肯定会忽略掉0. 1.基于Calendar类 import java.util.* ; // 导入需要的工具包 class DateTime{ // 以后直接通过此类就可以取得日期时间 private Calendar calendar = null ; // 声明一个Calenda

Java常用类库--日期操作类

1.Date类 在java.util包中定义了Date类,实用简单,直接输出其实例化对象即可. 如果希望按照自己的格式输出时间,可以使用Calendar类. import java.util.Date ; public class DateDemo01{ public static void main(String args[]){ Date date = new Date() ; // 直接实例化Date对象 System.out.println("当前日期为:" + date) ;

Java常用类库--Math、Random、NumberFormat、DecimalFormat、BigInteger、BigDecimal

1.Math类 表示数学操作,例如:平方根.四舍五入等等. public class MathDemo01{ public static void main(String args[]){ // Math类中的方法都是静态方法,直接使用"类.方法名称()"的形式调用即可 System.out.println("求平方根:" + Math.sqrt(9.0)) ; System.out.println("求两数的最大值:" + Math.max(1

Java常用类库--正则表达式(Pattern类、Matcher类)

1.认识正则 public class RegexDemo01{ public static void main(String args[]){ String str = "1234567890" ; // 此字符串由数字组成 boolean flag = true ; // 定义一个标记变量 // 要先将字符串拆分成字符数组,之后依次判断 char c[] = str.toCharArray() ; // 将字符串变为字符数组 for(int i=0;i<c.length;i+

Java常用类库--观察者设计模式( Observable类Observer接口)

如果要想实现观察者模式,则必须依靠java.util包中提供的Observable类和Observer接口. import java.util.* ; class House extends Observable{ // 表示房子可以被观察 private float price ;// 价钱 public House(float price){ this.price = price ; } public float getPrice(){ return this.price ; } publi

Java常用类库--Arrays、比较器(comparable、Comparator)

1.Arrays类 Arrays表示数组的操作类,直接定义在java.util包中 import java.util.* ; public class ArraysDemo{ public static void main(String arg[]){ int temp[] = {3,4,5,7,9,1,2,6,8} ; // 声明一个整型数组 Arrays.sort(temp) ; // 进行排序的操作 System.out.print("排序后的数组:") ; System.out