J2SE第六章——常用类(二)StringBuffer类
2016-11-23 19:21
309 查看
StringBuffer
问题:String 类是字符数组,长度不变,在执行字符串的连接操作时,是存在问题的
解决方法:
StringBuffer类——长度可以改变的字符串
1.2.1 StringBuffer 构造函数
StringBuffer sb1 = new StringBuffer();
AbstractStringBuffer() {
super(16);
}
AbstractStringBuilder(int capacity) {
value = new char[capacity];
}
StringBuffer sb1 = new StringBuffer(); // new char[16];
-----------------------------------------------------
StringBuffer sb2 = new StringBuffer(20); // new char[20];
------------------------------------------------------
StringBuffer sb3 = new StringBuffer("abc"); // new char[3+16];
}
1.2.2append() 追加
——在原串的尾部追加(影响原字符串)
1.2.3reverse() 反转
问题:String 类是字符数组,长度不变,在执行字符串的连接操作时,是存在问题的
public class Test { public static void main(String[] args) { String s1 = "abc"; String s2 = "123"; s1 = s1 + s2; System.out.println(s1); // abx123 } }
解决方法:
StringBuffer类——长度可以改变的字符串
1.2.1 StringBuffer 构造函数
StringBuffer sb1 = new StringBuffer();
AbstractStringBuffer() {
super(16);
}
AbstractStringBuilder(int capacity) {
value = new char[capacity];
}
StringBuffer sb1 = new StringBuffer(); // new char[16];
-----------------------------------------------------
StringBuffer sb2 = new StringBuffer(20); // new char[20];
------------------------------------------------------
StringBuffer sb3 = new StringBuffer("abc"); // new char[3+16];
}
1.2.2append() 追加
——在原串的尾部追加(影响原字符串)
public class Test { public static void main(String[] args) { StringBuffer sb = new StringBuffer("abc"); sb.append("123sgascahrhagad"); // 如果字符数组的长度小于需求,则以16的倍数自动追加 } }
1.2.3reverse() 反转
public class Test { public static void main(String[] args) { StringBuffer sb = new StringBuffer("abc"); System.out.println(sb.reverse()); // cba } }
public class Test { public static void main(String[] args) { String s = "Mircosoft";
char[] a = {'a','b','c'}; StringBuffer sb1 = new StringBuffer(S); // 9+16 sb1.append('/').append("IBM").append('/').append("sun"); System.out.println(sb1); // Mircosoft/IBM/sun } }
相关文章推荐
- 马士兵J2SE-第六章-常用类-String类、StringBuffer类、枚举ENUM
- J2SE第六章——常用类(Math类、File类)
- 马士兵J2SE-第六章-常用类-基本数据类型包装类、Maths类、File类
- J2SE第六章——常用类(一)String类
- J2SE第六章——常用类(三)包装类
- java学习之路----常用类库---StringBuffer类
- Java学习之常用类(二.StringBuffer类和StringBulid类)
- 常用对象API(StringBuffer类-可变长度数组和StringBuffer(int capacity))
- 第六章 MySQL数据库基础-常用的命令行
- 第六章:标签内常用方法总结
- j2se的几种常用组件例子
- JavaScript第六章知识点总结——JavaScript常用DHTML对象 Document相关对象 事件处理
- StringBuffer类的常用方法集合
- 15-StringBuffer-09-常用对象API(StringBuffer类-特点&添加功能)
- 智渔课堂官方免费教程二十:Java常用类之StringBuffer类和StringBuilder类
- B6第六章 第 6 节: MYSQL常用数据类型
- Java菜鸟学习笔记--常用类篇(一):String,StringBuffer类
- JavaScript第六章知识点总结——JavaScript常用DHTML对象 Document相关对象 事件处理
- 常用类、容器基础---J2SE
- java StringBuffer类 常用方法