Java中跟字符串相关的几个常用类

1. StringBuilder类

StringBuilder类在JDK1.5中首次引入,用来改善StringBuffer的操作。

StringBuilder类和String类的主要区别在于:

①利用StringBuilder类创建的对象,可以改变自身字符串的内容。所以被称为“可改性”对象,或“mutable”。

②利用String创建的对象,或者引用的对象,其自身内容不可改变。所以被称为“不可改性”对象,或“immutable”。

③由于需要改变字符串而引起的对内存地址和内容的切换,StringBuilder对象在执行速度上慢于String对象。

④StringBuilder类中增添了一些String中没有的方法。

2. StringBuffer类

StringBuffer类和StringBuilder类没有本质上的不同,它们有同样的构造函数和方法,其定义和操作也完全相同。

不同点如下:

①StringBuffer中的方法是同步方法(synchronized methods)。同步方法可以用于多线程(multi-threaded)程序的开发中。在一个多线程应用程序中,一个对象可以被多个线程同时(concurrencey)访问。

②StringBuilder中的方法不具有同步特性。但其执行速度比StringBuffer快。

③StringBuffer在没有应用多线程技术的程序中,往往被StringBuilder所代替。

3. StringTokenizer类

StringTokenizer是专门来对字符串对象进行分解处理的重要API类。

下面看一个实例:

import java.util.StringTokenizer;

public class StringTokenizerTest {
	public static void main(String[] args) {
		StringTokenizer dataToken = new StringTokenizer("10-15-2007", "-");
		while (dataToken.hasMoreTokens()) {
			System.out.println(dataToken.nextToken());
			System.out.println("Number of tokens left:" + dataToken.countTokens());
		}
	}
}
运行结果如下:

10
Number of tokens left:2
15
Number of tokens left:1
2007
Number of tokens left:0


你可能感兴趣的:(Java)