黑马程序员技术交流社区

标题: Java_常用对象_StringBuffer(2) [打印本页]

作者: 15732622419    时间: 2016-7-26 22:44
标题: Java_常用对象_StringBuffer(2)
删除功能:
public StringBuffer deleteCharAt(int index):删除指定位置的字符,并返回本身
public StringBuffer delete (int start ,int end):删除从指定位置开始到指定位置结束的内容,并返回本身。
案例三:
/**
*StringBuffer的删除功能   
*            publicStringBuffer deleteCharAt(int index)
*                      删除指定位置的字符,并返回本身
*             public StringBuffer delete(intstart, int index)
*                      删除从指定位置开始到指定位置结束的内容,并返回本身
*/
public class Demo3_StringBuffer {
         publicstatic void main(String[] args) {
                   StringBuffersb = new StringBuffer();
                   //sb.deleteCharAt(5);
                   //当缓冲区中这个索引上没有元素的时候就会报StringIndexOutOfBoundsException
                   sb.append("HelloWorld");
                   //sb.deleteCharAt(4);
                   //System.out.println(sb);//HellWorld
                   //sb.delete(0, 2);删除的时候包含头不包含尾
                   //System.out.println(sb);//lloWorld
                   //sb.delete(0, sb.length());//清空缓冲区,因为包含头不包含尾,最大索引为length-1
                   //System.out.println(sb);
                   sb= new StringBuffer();// 不能通过这种方式清空缓冲区,原来的会变成垃圾,浪费内存
                   System.out.println(sb);
         }
}
替换和反转功能:
         替换功能:
                   public StringBufferreplace(int start , int end , String str):从start开始到endstr替换
         反转功能:
                   public StringBuffer reverse():字符串反转
案例四
public class Demo4_StringBuffer {
         publicstatic void main(String[] args) {
                   StringBuffersb  = newStringBuffer("HelloWorld");
                   sb.replace(0,3,"tao");
                   System.out.println(sb);//taoloWorld
                   StringBuffersb2 = new StringBuffer("我爱Java");
                   sb2.reverse();
                   System.out.println(sb2);//avaJ爱我
         }
}
截取功能:
                   public Stringsubstring(int  start):从指定位置截取到末尾
                   public String substring(intstart ,int end):截取从指定位置开始到结束位置,包括开始位置,不包括结束位置
                   注意:返回值类型不再是StringBuffer本身
                  
案例五:
//substring:均指定的是索引值,包含头不包含尾
public class Demo5_StringBuffer {
         publicstatic void main(String[] args) {
                   StringBuffersb = new StringBuffer("woaijava!");
                   Stringstr = sb.substring(4);// 从指定位置开始截取到末尾
                   System.out.println(str);//java!
                   Stringstr2 = sb.substring(4, 7);
                   System.out.println(str2);//jav
         }
}
StringBufferString的相互转换:
                   AString –StringBuffer
                            通过构造方法
                            通过append()方法
                   BStringBuffer –String
                            通过构造方法
                            通过toString()方法
                            通过subString(0,length)
案例六:
public class Demo6_StringBuffer {
         publicstatic void main(String[] args) {
                   StringBuffersb = new StringBuffer("HelloWorld");
                   Strings1 = new String(sb);// 通过构造将StringBuffer转换为String
                   System.out.println(s1);//HelloWorld
                   Strings2 = sb.toString();// 通过toString方法将StringBuffer转换为String
                   System.out.println(s2);//HelloWorld
                  
                   Strings3= sb.substring(0,sb.length());//通过截取字符串将StringBuffer转换为String
                   System.out.println(s3);//HelloWorld
         }
}


作者: wx_pmVIrag6    时间: 2016-7-26 22:57
还没学到啊




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2