📅  最后修改于: 2023-12-03 15:16:32.163000             🧑  作者: Mango
在Java中,可以使用子字符串来从一个字符串中获取一部分子字符串。字符串类java.lang.String
中提供了多种方法来获取子字符串。
使用substring(int beginIndex)
方法可以从指定索引开始提取子字符串,包括开始索引字符。
String s = "Hello World";
String sub1 = s.substring(3); // sub1 = "lo World"
使用substring(int beginIndex, int endIndex)
方法可以从指定的起始索引位置开始提取子字符串,并且只提取到结束索引位置之前的字符,不包括结束索引字符。
String s = "Hello World";
String sub2 = s.substring(3, 7); // sub2 = "lo W"
使用split(String regex)
方法来将一个字符串切割成多个子字符串,根据传入的正则表达式进行切割,每个子字符串都作为一个新的字符串数组元素返回。
String s = "I'm a Java developer";
String[] subs = s.split(" "); // subs = {"I'm", "a", "Java", "developer"}
使用String.substring()
方法或者数组下标的方式来截取字符串,可以获取到部分或者全部的子字符串。
String s = "Java Programming";
String sub1 = s.substring(0, 4); // sub1 = "Java"
String sub2 = s.substring(5); // sub2 = "Programming"
String sub3 = s.substring(5, 12); // sub3 = "Program"
char[] chars = s.toCharArray();
String sub4 = new String(chars, 5, 12-5); // sub4 = "Program"
使用indexOf(String str)
方法可以查找指定子字符串在当前字符串中第一次出现的索引位置。
String s = "Hello World";
int index = s.indexOf("World"); // index = 6
使用lastIndexOf(String str)
方法可以查找指定子字符串在当前字符串中最后一次出现的索引位置。
String s = "Hello World";
int lastIndex = s.lastIndexOf("l"); // lastIndex = 9
使用replace(char oldChar, char newChar)
方法可以将指定字符在当前字符串中全部替换为另一个字符。
String s = "Hello World";
String newS = s.replace('l', 'L'); // newS = "HeLLo WorLd"
使用replace(CharSequence target, CharSequence replacement)
方法可以将指定字符串在当前字符串中全部替换为另一个字符串。
String s = "Hello World";
String newS = s.replace("World", "Java"); // newS = "Hello Java"
使用toLowerCase()
方法可以将当前字符串中的所有字符转换为小写字母形式。
String s = "Hello World";
String newS = s.toLowerCase(); // newS = "hello world"
使用toUpperCase()
方法可以将当前字符串中的所有字符转换为大写字母形式。
String s = "Hello World";
String newS = s.toUpperCase(); // newS = "HELLO WORLD"
在Java中,子字符串是很常用的处理字符串的方式,可以通过多种方法获取子字符串。需要注意的是,字符串是不可变对象,因此所有的操作都返回一个新的字符串对象,而不是修改原始字符串对象。