java strings 类——迹忆客-ag捕鱼王app官网
在 java 编程中广泛使用的 strings 是一个字符序列。 在 java 编程语言中,strings 被视为对象。
java 平台提供了 string 类来创建和操作字符串。
string 变量包含由双引号包围的字符集合:
示例
创建一个 string 类型的变量并为其赋值:
string greeting = "hello world!";
每当它在代码中遇到字符串文本时,编译器都会创建一个 string 对象,在这种情况下,它的值是“hello world!”。
与任何其他对象一样,我们可以使用 new 关键字和构造函数来创建 string 对象。 string 类有 11 个构造函数,允许我们使用不同的源(例如字符数组)提供字符串的初始值。
示例
public class stringdemo { public static void main(string args[]) { char[] helloarray = { 'h', 'e', 'l', 'l', 'o', '.' }; string hellostring = new string(helloarray); system.out.println( hellostring ); } }
上面示例编译运行结果如下
hello.
注意
- string 类是不可变的,因此一旦创建了 string 对象就无法更改。 如果有必要对字符串进行大量修改,那么我们应该使用 string buffer & string builder 类。
字符串长度
用于获取对象信息的方法称为访问器方法。 一种可用于字符串的访问器方法是 length() 方法,它返回字符串对象中包含的字符数。
下面的程序是string类的方法 length() 的一个例子。
public class main { public static void main(string[] args) { string txt = "abcdefghijklmnopqrstuvwxyz"; system.out.println("the length of the txt string is: " txt.length()); } }
上面示例编译运行结果如下
the length of the txt string is: 26
连接字符串
运算符可用于字符串之间来对它们进行连接。
string webname = "迹忆客"; string website = "jiyik.com"; system.out.println(webname ": " website);
上面示例编译运行结果如下
迹忆客: jiyik.com
我们还可以使用 concat()
方法连接两个字符串:
public class stringdemo { public static void main(string args[]) { string string1 = "saw i was "; system.out.println("dot " string1 "tod"); } }
创建格式字符串
我们有 printf() 和 format() 方法来打印带有格式化数字的输出。 string 类有一个等效的类方法 format(),它返回一个 string 对象而不是 printstream 对象。
使用 string 的静态 format() 方法可以创建一个可以重用的格式化字符串,而不是一次性打印语句。 例如,对于下面的代码
system.out.printf("浮点型变量的值为 "
"%f, 整型变量的值为 "
" %d, 字符串变量的值为 "
"is %s", floatvar, intvar, stringvar);
我们可以写成
string fs;
fs = string.format("浮点型变量的值为 "
"%f, 整型变量的值为 "
" %d, 字符串变量的值为 "
" %s", floatvar, intvar, stringvar);
完整的 strings 类的方法列表
下面是 string 类支持的方法
sn(序号) | 方法 | 描述 |
---|---|---|
1 | 返回指定索引处的 char 值。 | |
2 | 把这个字符串和另一个对象比较。 | |
3 | 按字典顺序比较两个字符串。 | |
4 | 按字典顺序比较两个字符串,不考虑大小写。 | |
5 | 将指定字符串连接到此字符串的结尾。 | |
6 | 当且仅当字符串与指定的stringbuffer有相同顺序的字符时候返回真。 | |
7 | 返回指定数组中表示该字符序列的 string。 | |
8 | 返回指定数组中表示该字符序列的 string。 | |
9 | 测试此字符串是否以指定的后缀结束。 | |
10 | 将此字符串与指定的对象比较。 | |
11 | 将此 string 与另一个 string 比较,不考虑大小写。 | |
12 | 使用平台的默认字符集将此 string 编码为 byte 序列,并将结果存储到一个新的 byte 数组中。 | |
13 | 使用指定的字符集将此 string 编码为 byte 序列,并将结果存储到一个新的 byte 数组中。 | |
14 | 将字符从此字符串复制到目标字符数组。 | |
15 | 返回此字符串的哈希码。 | |
16 | 返回指定字符在此字符串中第一次出现处的索引。 | |
17 | 返回在此字符串中第一次出现指定字符处的索引,从指定的索引开始搜索。 | |
18 | 返回指定子字符串在此字符串中第一次出现处的索引。 | |
19 | 返回指定子字符串在此字符串中第一次出现处的索引,从指定的索引开始。 | |
20 | 返回字符串对象的规范化表示形式。 | |
21 | 返回指定字符在此字符串中最后一次出现处的索引。 | |
22 | 返回指定字符在此字符串中最后一次出现处的索引,从指定的索引处开始进行反向搜索。 | |
23 | 返回指定子字符串在此字符串中最右边出现处的索引。 | |
24 | 返回指定子字符串在此字符串中最后一次出现处的索引,从指定的索引开始反向搜索。 | |
25 | 返回此字符串的长度。 | |
26 | 告知此字符串是否匹配给定的正则表达式。 | |
27 | 测试两个字符串区域是否相等。 | |
28 | 测试两个字符串区域是否相等。 | |
29 | 返回一个新的字符串,它是通过用 newchar 替换此字符串中出现的所有 oldchar 得到的。 | |
30 | 使用给定的 replacement 替换此字符串所有匹配给定的正则表达式的子字符串。 | |
31 | 使用给定的 replacement 替换此字符串匹配给定的正则表达式的第一个子字符串。 | |
32 | 根据给定正则表达式的匹配拆分此字符串。 | |
33 | 根据匹配给定的正则表达式来拆分此字符串。 | |
34 | 测试此字符串是否以指定的前缀开始。 | |
35 | 测试此字符串从指定索引开始的子字符串是否以指定前缀开始。 | |
36 | 返回一个新的字符序列,它是此序列的一个子序列。 | |
37 | 返回一个新的字符串,它是此字符串的一个子字符串。 | |
38 | 返回一个新字符串,它是此字符串的一个子字符串。 | |
39 | 将此字符串转换为一个新的字符数组。 | |
40 | 使用默认语言环境的规则将此 string 中的所有字符都转换为小写。 | |
41 | 使用给定 locale 的规则将此 string 中的所有字符都转换为小写。 | |
42 | 返回此对象本身(它已经是一个字符串!)。 | |
43 | 使用默认语言环境的规则将此 string 中的所有字符都转换为大写。 | |
44 | 使用给定 locale 的规则将此 string 中的所有字符都转换为大写。 | |
45 | 返回字符串的副本,忽略前导空白和尾部空白。 | |
46 | 返回给定data type类型x参数的字符串表示形式。 | |
47 | 判断是否包含指定的字符系列。 | |
48 | 判断字符串是否为空。 |