------<a href="http://www.itheima.com" target="blank">Java培训、Android培训、iOS培训、.Net培训</a>、期待与您交流! -------
StringBuffer
1.1 定义:String 类 一旦被实例化以后就不可以改变能改变的只是其指向的地址(引用类型),但是StringBuffer中的内容是可以被改变的,并且不像String 那样可以直接赋值,必须使用构造函数new一个出来;
1.2方法简介: append()等价于 String 类中的+;
append() 返回的值也是Stringbuffer
public class StringBufferDemo1
{
public static void main(String[] args){
StringBuffer bur=new StringBuffer();
bur.append("hello").append("world").append("+").append(10).append('c').append(true);
/*****从此处可以看出append可以连接任何的数据类型并且可以连续调用 ******/
System.out.println(bur);//此处调用toString 方法;
}
}
1.3 StringBuffer中的内容是可以改变的
public class StringBufferDemo2
{
public static void main(String[] args){
StringBuffer bur=new StringBuffer();
bur.append("hello").append("world").append("+").append(10).append('c').append(true);
fun(bur);
System.out.println(bur);//直接输出 调用toString()方法
}
public static void fun(StringBuffer s){
s.append("我是周海峰").append("大家好");
}
}
1.3 insert() 添加内容---其好处是可以指定内容添加的位置
class StringBufferDemo3
{
public static void main(String[] args)
{
StringBuffer bur=new StringBuffer();
bur.append("我是周海峰");
bur.insert(0,"大家好");
System.out.println(bur);
bur.insert(bur.length(),"请多多指教");
System.out.println(bur);
}
}
1.4 reverse(),可以倒置字符串中的内容
class StringBufferDemo4
{
public static void main(String[] args)
{
StringBuffer bur=new StringBuffer();
bur.append("我是周海峰");
bur.reverse();
System.out.println(bur);
}
}
1.5 replace(),替换字符串中的内容
class StringBufferDemo5
{
public static void main(String[] args)
{
StringBuffer bur=new StringBuffer();
bur.append("周海峰");
bur.replace(2,6,"woshi");
System.out.println(bur);
}
}
运行的结果为:周海woshi
class StringBufferDemo5
{
public static void main(String[] args)
{
StringBuffer bur=new StringBuffer();
bur.append("woshizhouhaifeng");
bur.replace(2,6,"woshi");
System.out.println(bur);
}
}
运行的结果为:
wowoshishihouhaifeng
总结:从以上结果可以看出在计算下标的时候,字符和汉字都只占一个下标