String类和StringBuffer类
在应用程序中经常会用到字符串,所谓字符串就是指一连串的字符,它是由许多单个字符连接而成的,如多个英文字母所组成的一个英文单词。字符串中可以包含任意字符。这些字符必须包含在一对双引号" "
之内,例如"abc"
。在Java中定义了String和SringBuffer两个类来封装字符串,并提供了一系列操作字符串的方法,它们都位在java.lang包中,因此不需要导包就可以直接使用。接下来针对String类和StringBuffer类进行详细讲解。
String类的初始化
在操作String类之前,首先需要对String类进行初始化。在Java中可以通过以下两种方式对String类进行初始化,具体如下。
- 使用字符串常量直接初始化一个String对象,具体代码如下:
String str1="abc";
- 使用String的构造方法初始化字符串对象,String类的构造方法如下表:
方法声明 | 功能描述 |
---|---|
String() | 创建一个内容为空的字符串 |
String(char[] value) | 根据指定的字符数组创建对象 |
String(String value) | 根据指定的字符串内容创建对象 |
class Example01 {
public static vold main(String[] args) throws Exception{
//创建一个空的字符串
String str1=new String();
//创建一个内容为abed的字符串
String str2=new String ("abed");
//创建一个内容为字符数组的字符串
char[] charArray=new char[]{'D','E','F'};
String str3=new String(charArray);
System.out.println("a"+str1+"b");
System.out.println(str2);
System.out.println(str3) ;
}
}
运行结果:
ab
abcd
DEF
StringBuffer类的初始化
由于字符串是常量,因此一旦创建,其内容和长度是不可改变的。如果需要对一个字符串进行修改,则只能创建新的字符串。为了便于对字符串的修改,在JDK中提供了一个StringBuffer类(也称字符串缓冲区)。StringBuffer类和String类最大的区别在于它的内容和长度都是可以改变的。StringBuffer类似一个字符容器,当在其中添加或删除字符时,并不会产生新的Stringuffer 对象。针对添加和删除字符的操作,StringBuffer类提供了一系列的方法,具体如下表示。
方法声明 | 功能描述 |
---|---|
StringBuffer append(char c) | 添加参数到StringBuffer对象中 |
StringBuffer insert( int offset,String str) | 将字符串中的offset位置插人字符串str |
StringBuffer deleteCharAt(int index) | 移除此序列指定位置的字符 |
StringBuffer delete(int start,int end) | 删除StringBuffer对象中指定范围的字符或字符串序列 |
StringBuffer replace( int start,int end,String s) | 在Stringuffer对象中替换指定的字符或字符串序列 |
void setCharAt(int index, char ch) | 修改指定位置index处的字符序列 |
String toString() | 返回StringBuffer缓冲区中的字符串 |
StringBuffer reverse() | 将此字符序列用其反转形式取代 |
学习记录,还望指正!