String 类

2017-12-09  本文已影响0人  Aimerwhy

1 String类简介

String类的特性:

1)Java.lang.String使用了final修饰,不能被继承;

2)字符串底层封装了字符数组及针对字符数组的操作方法;

3)字符串一旦创建,对象永远无法改变,但字符串引用可以重新赋值;

字符串不能被改变的原因:

1)Java为了提高性能,静态字符串在常量池中创建,并尽量使用同一个对象,重用静态字符串;

2)对于重复出现的字符串直接量,JVM会首先在常量池中查找,如果存在即返回该对象。

String类的内存编码和长度:

1)String在内存中采用Unicode编码,每个字符占用两个字节;

2)任何一个字符(无论是中文还是英文)都算1个字符长度,占用2个字节。

说明无论中文还是英文一个字符都是一个长度:hello长度5,中国长度是2

String类中的常用方法:

String类之indexOf方法:字符串检索。关于indexOf的常用方法如下:

String类之substring方法:取子字符串。substring的常用方法如下:

string类之trim方法:去掉字符串的前导和后继空白

String类之charAt方法:

char charAt(int index) 方法charAt()用于返回字符串指定位置的字符。

String类之valueOf方法:返回参数的字符串类型,参数可以是:布尔类型,字符类型,double类型,float类型,int类型,long类型

StringBuilder类的特性:

1)StringBuffer类的对象能够被多次的修改,并且不产生新的未使用对象。

2)StringBuilder 类在 Java 5 中被提出, StringBuilder 的方法不是线程安全的(不能同步访问)。

3)由于 StringBuilder有速度优势,所以多数情况下建议使用 StringBuilder 类。然而在应用程序要求线程安全的情况下,则不能选用。

StringBuilder类的构造函数:

public StringBuilder();

public StringBuilder(String str);

StringBuilder类的常用方法:

补充:StringBuiler并不是只有这些方法,以上只是比String类多出的一些特别方法,其余方法大部分跟String类的方法类似,所以一般可以用StringBuiler替代String,原因见StringBuiler类的特性。

StringBuilder类中的常用方法:

StringBuilder append(String str)方法:

StringBuffer的作用:

StringBuffer也是一个关于字符串处理的类

StringBuffer和StringBuilder类拥有的方法基本相同,但是两者底层还存在如下区别:

1)StringBuffer是线程安全的,同步处理的,性能稍慢,如果需要线程安全的情况下要用StringBuffer。

2)StringBuilder是非线程安全的,并发处理的,性能稍快,一般建议用StringBuilder

上一篇 下一篇

猜你喜欢

热点阅读