k、startsWith方法
该方法的作用和endsWith方法类似,只是该方法是判断字符串是否以某个字符串作为开始。例如:
String s = “TestGame”;
boolean b = s.startsWith(“Test”);
则变量b的值是true。
l、substring方法
该方法的作用是取字符串中的“子串”,所谓“子串”即字符串中的一部分。例如“23”是字符串“123”的子串。
字符串“123”的子串一共有6个:”1”、”2”、”3”、”12”、”23”、”123”。而”32”不是字符串”123”的子串。
例如:
String s = “Test”;
String s1 = s.substring(2);
则该代码的作用是取字符串s中索引值为2(包括)以后的所有字符作为子串,则字符串s1的值是”st”。
如果数字的值和字符串的长度相同,则返回空字符串。例如:
String s = “Test”;
String s1 = s.substring(4);
则字符串s1的值是””。
如果需要取字符串内部的一部分,则可以使用带2个参数的substring方法,例如:
String s = “TestString”;
String s1 = s.substring(2,5);
则该代码的作用是取字符串s中从索引值2(包括)开始,到索引值5(不包括)的部分作为子串,则字符串s1的值是”stS”。
下面是一个简单的应用代码,该代码的作用是输出任意一个字符串的所有子串。代码如下:
String s = “子串示例”;
int len = s.length(); //获得字符串长度
for(int begin = 0;begin < len – 1;begin++){ //起始索引值
for(int end = begin + 1;end <= len;end++){ //结束索引值
System.out.println(s.substring(begin,end));
}
}
在该代码中,循环变量begin代表需要获得的子串的起始索引值,其变化的区间从第一个字符的索引值0到倒数第二个字符串的索引值len -2,而end代表需要获得的子串的结束索引值,其变化的区间从起始索引值的后续一个到字符串长度。通过循环的嵌套,可以遍历字符串中的所有子串。
m、toCharArray方法
该方法的作用和getBytes方法类似,即将字符串转换为对应的char数组。例如:
String s = “abc”;
char[] c = s.toCharArray();
则字符数组c的值为:{‘a’,’b’,’c’}。
n、toLowerCase方法
该方法的作用是将字符串中所有大写字符都转换为小写。例如:
String s = “AbC123”;
String s1 = s.toLowerCase();
则字符串s1的值是”abc123”,而字符串s的值不变。
类似的方法是toUpperCase,该方法的作用是将字符串中的小写字符转换为对应的大写字符。例如:
String s = “AbC123”;
String s1 = s. toUpperCase ();
则字符串s1的值是”ABC123”,而字符串s的值也不变。
o、trim方法
该方法的作用是去掉字符串开始和结尾的所有空格,然后形成一个新的字符串。该方法不去掉字符串中间的空格。例如:
String s = “ abc abc 123 “;
String s1 = s.trim();
则字符串s1的值为:” abc abc 123”。字符串s的值不变。
p、valueOf方法
该方法的作用是将其它类型的数据转换为字符串类型。需要注意的是,基本数据和字符串对象之间不能使用以前的强制类型转换的语法进行转换。
另外,由于该方法是static方法,所以不用创建String类型的对象即可。例如:
int n = 10;
String s = String.valueOf(n);
则字符串s的值是”10”。虽然对于程序员来说,没有发生什么变化,但是对于程序来说,数据的类型却发生了变化。
介绍一个简单的应用,判断一个自然数是几位数字的逻辑代码如下:
int n = 12345;
String s = String.valueOf(n);
int len = s.length();
则这里字符串的长度len,就代表该自然数的位数。这种判断比数学判断方法在逻辑上要简单一些。
关于String类的使用就介绍这么多,其它的方法以及这里到的方法的详细声明可以参看对应的API文档。