我们知道String类输入内容后内容是不变的,假如我们程序在写完后发现未来还要往里面添加东西所以StringBuffer就很适合之后添加内容,当然除了StringBuffer之外能实现还有可变参数也能实现。先说StringBuffer与数组很像,他的常用方法如下
(1)length()是返回字符串长度
(2)insert(int 插入位置,"插入内容")是在字符串中间插入,有几种不同的参数方式
(3)append()是在字符串的尾部追加字符串
(4)setChatAt(int index,char ch)是设置指定索引位置为制定的字符,简称替换
(5)toString()是返回字符串,也就是输出你所增加的所有字符串
各种方法代码如下
public static void main(String[] args) {
String s="abc ";
StringBuffer xx=new StringBuffer();
xx.append("你好 ");
xx.append("hello world ");
xx.append(" 欢迎 ");
System.out.println(xx.toString());
xx.insert(2," aaa ");
xx.setCharAt(3, 'c');
System.out.println(xx.toString());
s=s+xx.toString();
System.out.println(s);
System.out.println("字符串长度为(空格也算):"+xx.length());
System.out.println("字符串长度为(空格也算):"+s.length());
}
运行结果:
你好 hello world 欢迎
你好 caa hello world 欢迎
abc 你好 caa hello world 欢迎
字符串长度为(空格也算):24
字符串长度为(空格也算):28
总结:StingBuffer创建对象后使用,在StingBuffer这个对象在insert(),setChatAt()中的位置排列是按照append()增加的值所在位置。
也说说可变参数用法,定义是这样的 String...s;举个例子我们定义了字符串,我们要增加字符串内容所以我们用String...s;代表s里面的字符串是可以变的,我们在字符串后面留了空间,而他的内存随着你增加的内容而变。
代码如下
public class kebian {
static void display(String...s){
System.out.print(" ");
for(int i=0;i<s.length;i++){
System.out.print(s[i]+" ");
}
}
public static void main(String[] args) {
display("好好学习");
display("天天向上");
}
}
运行结果:
好好学习 天天向上