黑马程序员---易错、易望、基础、重要知识点 ——API常用类1——StringBuffer/StringBuilder
2015-12-09 03:04
633 查看
------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------
注:这些是我个人觉得应该多加注意,或者编程中的技巧,或应该知道的零散知识点。只是对学习java的补充,和重点的点名,不适合初学者的主要学习资料。里面有些必须要记住的,都会给标记出来,无论是想学习java的还是打算找java工作的都可以看一下。
1、String StringBuffer
1. 都是有char[] 构成,(数组,一旦创建,长度固定,默认是16个)
2. String 的char[] 被final修饰,一旦被赋值不能更改,
StringBuffer的char[] 不会final修饰,,,,
数组长度是通过赋值原数组内容,来扩容原数组。如下图。
3、StringBuffer.insert(index,任意类型);;出入位置是 第index的前面
eg:
//StringBuffer的初始化
StringBuffer buffer=new StringBuffer("abcde");
// (另一种赋值:StringBuffer buffer=new StringBuffer();
// buffer.append("abcde"); )
buffer.insert(5,55);
System.out.println(buffer);
4、StringBuffer . subString() 返回值是String 类型
5、String和StringBuffer对象的相互转化
StringBuffer 转String buffer.toString();
用String的构造方法 String(buffer);
String s=new String(buffer);
6、遇到字符串的拼接就用 StringBuffer.append();这样会节省空间,不用 String 类型+“String 元素”
7、String的反转
String是不变量,不能进行反转, 不过可以借助StringBuffer 进行反转 StringBuffer。reverse();
2、StringBuilder StringBuffer
StringBuffer 线程安全
3、String的不变性
程序:
在method方法中写输出,S 的值为重新复制出来的s值
public class StringBufferDemo1 {
public static void main(String[] args) {
String s="abc";
method(s);
}
public static void method(String s) {
s=s+"de";
System.out.println(s);//此处的s为重新复制出来的s,但不会改变原s的值(即不会改变原s的地址)
}
}
输出结果:abcde
在主函数中 写输出 s为原 s的值
public class StringBufferDemo1 {
public static void main(String[] args) {
String s="abc";
method(s);
System.out.println(s);
}
public static void method(String s) {
s=s+"de";
}
}
输出结果:abc
StringBuffer
注:这些是我个人觉得应该多加注意,或者编程中的技巧,或应该知道的零散知识点。只是对学习java的补充,和重点的点名,不适合初学者的主要学习资料。里面有些必须要记住的,都会给标记出来,无论是想学习java的还是打算找java工作的都可以看一下。
1、String StringBuffer
1. 都是有char[] 构成,(数组,一旦创建,长度固定,默认是16个)
2. String 的char[] 被final修饰,一旦被赋值不能更改,
StringBuffer的char[] 不会final修饰,,,,
StringBuffer(): 构造一个其中不带字符的字符串缓冲区,初始容量为 16 个字符。 |
3、StringBuffer.insert(index,任意类型);;出入位置是 第index的前面
eg:
//StringBuffer的初始化
StringBuffer buffer=new StringBuffer("abcde");
// (另一种赋值:StringBuffer buffer=new StringBuffer();
// buffer.append("abcde"); )
buffer.insert(5,55);
System.out.println(buffer);
4、StringBuffer . subString() 返回值是String 类型
5、String和StringBuffer对象的相互转化
StringBuffer 转String buffer.toString();
用String的构造方法 String(buffer);
String s=new String(buffer);
6、遇到字符串的拼接就用 StringBuffer.append();这样会节省空间,不用 String 类型+“String 元素”
7、String的反转
String是不变量,不能进行反转, 不过可以借助StringBuffer 进行反转 StringBuffer。reverse();
2、StringBuilder StringBuffer
StringBuffer 线程安全
3、String的不变性
程序:
在method方法中写输出,S 的值为重新复制出来的s值
public class StringBufferDemo1 {
public static void main(String[] args) {
String s="abc";
method(s);
}
public static void method(String s) {
s=s+"de";
System.out.println(s);//此处的s为重新复制出来的s,但不会改变原s的值(即不会改变原s的地址)
}
}
输出结果:abcde
在主函数中 写输出 s为原 s的值
public class StringBufferDemo1 {
public static void main(String[] args) {
String s="abc";
method(s);
System.out.println(s);
}
public static void method(String s) {
s=s+"de";
}
}
输出结果:abc
StringBuffer
相关文章推荐
- 272. Closest Binary Search Tree Value II
- terminating the instance due to error 119
- Fail to build seafile-server libevhtp
- 贝塞尔曲线UIBezierPath
- 在MySQL中创建实现自增的序列(Sequence)的教程
- UITextField设置大全
- UIButton的自定义
- 简单的iCloud键值存储Key-Value Data Storage
- Ios补全UITableViewCell分割线
- marquee标签不用js实现滚动效果
- iOS开发-UICollectionView实现瀑布流
- VS2013与有道词典冲突
- 异常处理:Null value was assigned to a property of primitive type setter of"原因及解决方案
- iOS UI基础-19.0 UICollectionView
- Azkaban Quick Start
- 几种获取request,session方法
- 关于GUID,全局唯一标识符
- UGUI_不规则图片点击事件处理
- iOS UITextField实用限制字符长度(中英文)—— HERO博客
- [leetcode 303] Range Sum Query - Immutable