String s1 = "java";创建一个字符串对象java,名为s1
String s2 = new String();创建一个空字符串对象,名为s2
String s3 = new String("java");创建一个字符串对象java,名为s3
String的一些常用方法如下:
charAt()方法和substring()方法
char charAt(int index):获取字符串中指定位置的字符
String substring(int beginIndex):获取从beginIndex位置开始到最后一次出现的位置
String substring(int beginIndex, int endIndex):获取从beginIndex位置开始到endIndex位置的子字符串
代码演练:
package java_proj;
public class StringDemo1 {
public static void main(String[] args) {
//定义一个字符串“java 编程 基础”
String str = "java 编程 基础";
//打印输出字符串的长度
System.out.println(str.length());
//取出字符“程”并输出
System.out.println(str.charAt(6));
//取出子串“编程 基础”并输出
System.out.println(str.substring(5));
//取出子串“编程”并输出
System.out.println(str.substring(5, 7));
}
}
输出:
10
程
编程 基础
编程
其中,charAt(int index)方法中传入的参数是某个字符的索引,下面是字符串中每个字符对应的索引:
可看到“程”的索引为6,所以代码中传入6;
substring()方法有两种,当要取的子串为从字符到最后一个字符时,只需传入子串开始位置的索引即可;否则,需传入(开始索引,结束索引+1)
。
indexOf()方法和lastIndexOf()方法
int indexOf(int ch):查找ch字符在该字符串中第一次出现的位置
int indexOf(String str):查找str子字符串在该字符串中第一次出现的位置
int lastIndexOf(int ch):查找ch字符在该字符串中最后一次出现的位嚣
int lastIndexOf(String str):查找str子字符串在该字符串中最后一次出现的位置package java_proj;
public class StringDemo2 {
public static void main(String[] args) {
//定义一个字符串"java编程基础,我喜欢java编程"
String str = new String("java编程基础,我喜欢java编程");
//查找字符'a'在字符串中第一次出现的位置
System.out.println("字符'a'在字符串中第一次出现的位置是"+str.indexOf('a'));
//查找子串"编程"在字符串中第一次出现的位置
System.out.println("子串\"编程\"在字符串中第一次出现的位置是"+str.indexOf("编程"));
//查找字符'a'在字符串中最后一次出现的位置
System.out.println("字符'a'在字符串中最后一次出现的位置是"+str.lastIndexOf('a'));
//查找子串"编程"在字符串中最后一次出现的位置
System.out.println("子串\"编程\"在字符串中最后一次出现的位置是"+str.lastIndexOf("编程"));
//在字符串index值为8的位置开始,查找子串"编程"第一次出现的位置
System.out.println("在字符串index值为8的位置开始,查找子串\"编程\"第一次出现的位置是"+str.indexOf("编程", 8));
}
}
输出:
字符'a'在字符串中第一次出现的位置是1
子串"编程"在字符串中第一次出现的位置是4
字符'a'在字符串中最后一次出现的位置是15
子串"编程"在字符串中最后一次出现的位置是16
在字符串index值为8的位置开始,查找子串"编程"第一次出现的位置是16
在最后一条语句中,给indexOf()方法传入了两个参数,该方法表示:从某个位置开始查找某字符或子串第一次出现的位置。lastIndexOf()同理。往往在编程过程中进行选择: