害,不知道什么时候才能养成一天不写博客手痒痒的习惯。
String
来自:java.lang。
实现:
Serializbale(序列化)
Comparable< String >
CharSequence(字符序列)。
String是final类不能被继承。
String类是字符串常量,是不可更改的常量。
方法例举:
StringBuffer(可被多次修改,不产生新的未使用对象)
慢,但是线程安全
来自:java.lang
继承:AbstractStringBuilder(可变字符序列)
实现:
Serializable
CharSequence。
StringBuffer是字符串变量,它的对象是可以扩充和修改的,因此数据会发生频繁更替的就可以使用StringBuffer对象啦
举个例子:
将1到100的所有数字全部拼起来:
StringBuffer sb = new StringBuffer();
for(int i = 0; i < 100; i++){
sb.append(i);
}
相对于String对象的
String str = new String();
for(int i = 0; i < 100; i++){
str = str + i;
}
的这种方式StringBuffer对象的效率要高出那么一筹。学习之初String对象还是用的比较多的。
StringBuffer对象存储进Java集合类中时会出现问题,因为它没有equals方法和hashCode方法???无法完成比较的操作的话它就是会出问题???
StringBuilder(可被多次修改,不产生新的未使用对象)
快,但是线程不安全
来自:java.lang
继承:AbstractStringBuilder。
实现:
Serializable
CharSequence。
用在字符串缓冲区被单个线程使用的时候
方法:
不随地乱扔代码,从你我做起。爱护代码就是爱护你自己。