Java实用类之String、StringBuffer、StringBuilder

1、 String类概述

(1)在Java中,字符串被作为String类型的对象来处理。

(2)String类位于java.lang包中,默认情况下,该包被自动导入所有的程序。

(3)创建String对象的方法如下代码所示

String s = "Hello World";

String s = new String("Hello World");

(4)String类提供了许多有用的方法来操作字符串,比如获取字符串长度、对两个字符串进行比较、连接两个字符串

以及提取一个字符串中的某一部分。

(5)字符串是一个字符序列,每一个字符都有自己的位置,字符串事实上也是一个字符数组,因此它的索引位置从0

开始到(字符串长度-1)结束。

2、 String类常用方法

(1)求字符串长度:length()

(2)字符串比较:equals(字符串2)

(3)忽略带小写的字符串比较:equalsIgnoreCase(字符串2)

(4)转换字符串中的英文字符为小写:toLowerCase()

(5)转换字符串中的英文字符为大写:toUpperCase()

(6)字符串的连接:concat(字符串2)

(7)字符串提取和查询

(8)字符串拆分:split(separator,limit)

-->separator是可选项,表示根据匹配指定的正则表达式来拆分此字符串。如果匹配不上,则结果数组只有一个

元素,即此字符串。

-->limit可选项,该值用来限制返回数组中的元素个数。

3、使用StringBuffer类处理字符串

(1)StringBuffer类也是Java提供的用于处理字符串的一个类,而且它是比String类更高效的存储字符串的一种引用

数据类型,线程安全的可变字符序列。

(2)StringBuffer类对字符串进行连接操作时,使用StringBuffer类可以大大提高程序的执行效率。

(3)如何使用StringBuffer类

StringBuffer类位于java.util包中,是String类的增强类。StringBuffer类提供了很多方法可供使用。

StringBuffer 对象名 = new StringBuffer("字符串内容");

(4)常用的StringBuffer类方法

1)toString()方法:将StringBuffer类型的字符串转换为String类型的对象。

2)append(参数)方法:将参数连接到字符串后,可以将任何类型的值追加到字符串后。

3)insert(位置,参数)方法:将参数插入到字符串指定位置后并返回。参数值可以是包括String的任何类型。

4、使用StringBuilder类处理字符串

(1)java.lang.StringBuilder是JDK 5.0版本新增的类,它是一个可变的字符序列,线程不安全。

(2)此类提供一个与StringBuffer类兼容的API,被设计用作StringBuffer类的一个简易替换,在大多数实现中,

它比StringBuffer执行要快。

(3)使用StringBuilder类处理字符串的方法与StringBuffer类基本一样。

5、 String类、StringBuffer类及StringBuilder类对比

String、StringBuffer、StringBuilder这3个类在处理字符串时有各自的特点和实用场合,具体如下:

(1)String:字符串常量

String是不可变的对象,在每次对String类型进行改变时其实都等同于生成了一个新的String对象,然后指向新

的String对象,所以经常改变内容的字符串最好不要用String类型,因为每次生成对象都会对系统性能产生影响。

(2)StringBuffer:字符串变量

StringBuffer是可变的字符串,在每次对StringBuffer对象进行改变时,会对StringBuffer对象本身进行操作,

而不是生成新的对象,再改变对象引用。所以,在字符串对象经常改变的情况下,推荐使用StringBuffer类。

(3)StringBuilder:字符串变量

JDK 5.0版本以后提供了StringBuilder类,它和StringBuffer类等价,区别在于StringBuffer类是线程安全的,

StringBuilder类是单线程的,不提供同步,理论上效率更高。

你可能感兴趣的:(java,开发语言,jvm)