单个字符可以用char类型保存,多个字符组成的文本就需要保存在String对象中。String通常被称为字符串,一个String对象最多可以保存(2*32-1)个字节(占用4GB空间大小)的文本内谷。本节将详细讲解String类的使用方法。
9.1.1声明字符串
在Java语言中,字符串必须包含在一对双引号("")之内。例如:
"23.23"、"ABCDE"、"你好"
以上这些都是字符串常量,字符串常量可以是系统能够显示的任何文字信息,甚至可以是单个字符。
误区警示:
在Java中由双引号("")包围的都是字符串,不能作为其他数据类型来使用,如"1+2"的输出结果不可能是3。
可以通过以下语法格式来声明字符串变量:
String str;
☑ String:指定该变量为字符串类型。
☑ str:任意有效的标识符,表示字符串变量的名称。
声明字符串变量s,代码如下:
String s;
说明:声明的字符串变量必须经过初始化才能使用,否则编译器会报出"变量未被初始化错误"。
9.1.2创建字符串
在Java语言中,将字符串作为对象来处理,因此可以像创建其他类对象一样来创建字符串对象。创建对象要使用类的构造方法。String类的常用构造方法如下。
1.String(char a[])
该方法用一个字符数组a创建String对象,代码如下:
char a[] = {'g','o','o','d'};
String s = new String(a);
等价于String s = new String("good");
2.String(char a),int offset,int length)
该方法提取字符数组a中的一部分创建一个字符串对象。参数offset表示开始截取字符串的位置,length表示截取字符串的长度。代码如下:
char a[] = {'s',t,u,'d','e','n','t'};
String s = new String(a,2,4);
等价于String s = new String("uden");
3.String(char[] value)
该构造方法可分配一个新的String对象,使其表示字符数组参数中所有元素连接的结果。代码如下:
char a[] = {'s',t,u','d,'e','n't};
String s = new String(a);
等价于String s = new String("student");
除通过以上几种使用String类的构造方法来创建字符串变量外,还可通过将字符串常量的引用赋值给一个字符串变量来创建字符串。代码如下:
String str1,str2;
str1 = "We are students";
srt2 = "We are students";
此时,str1与str2引用相同的字符串常量,因此具有相同的实体,内存示意图如下:
We are students