3 Java字符串1

Java没有内置的字符串类型,而是在标准的Java类库中提供一个预定义类String,所以每个用双引号括起来的字符串实际上都可以看作String类的一个实例。

1 创建字符串实例

创建字符串实例的语法是String紧跟字符串名称,也可以在创建的同时进行赋值:

String s = "";//一个空字符串
String another = "Hello";

2 字符串连接

当需要把两个或多个字符串连接时,可以通过+进行该操作,这点和python类似,例如下面的程序举例以及该段代码的输出结果:

String s1 = "hello";
String s2 = "world";
System.out.print(s1 + " " + s2);

运行结果1

除以之外,+也可以把字符串和其它数据类型的变量进行连接,只不过在连接之前会把其它数据类型转换为字符串类型

3 字符串的不可变特性

Java字符串具有的一个重要特性是不可变性,此处的不可变性是指Java字符串的内容不可变,举个例子说明:

String s1 = "hello";
System.out.println(s1);
s1 = "world";
System.out.println(s1);

此段代码的输出结果是:

hello
world

程序执行的过程是先创建字符串"hello",然后让字符串变量s1指向"hello”,执行第四条语句时,创建字符串"world",然后让字符串变量s指向"world",字符串"hello"的内容并没有改变,只是不能通过字符串变量s访问了

4 子串

如果要提取一个字符串的部分字符串片段,可以使用String类的substring方法,例如:

String s1 = "abcdefg";
System.out.println(s1.substring(4));//输出第5个以及第5个之后的全部字符
System.out.println(s1.substring(4,7));//输出第5个到第7个的全部字符

Java字符串的取子串方法类似于python中的切片,由于Java字符串具有不可变性,所以Java字符串的取子串方法还可以和字符串连接操作一起通过已有字符串创建新的字符串(类似于改变字符串的类容,但实际上只是改变了字符串变量的指向)

String s1 = "hello guys";
//如果要改变s1的内容,例如想要将s1指向的字符串的内容改为"hello everyone",
//可以先用substring方法取出前6个字符,再通过字符串连接构造新的字符串
s1 = s1.substring(0, 6) + "everyone";

你可能感兴趣的:(3 Java字符串1)