猿问
Java中如何在不使用substring()方法的情况下获取子字符串?
我只是在寻找一种简单的方法来提取子字符串而不使用 substring 方法。
Smart猫小萌
浏览 129
回答 2
2回答
千巷猫影
您可以按如下方式进行操作:public class Test { public static void main(String args[]) { String str = "Hello World!"; String newStr = ""; int startFrom = 2, endBefore = 5;// test startFrom and endBefore indices for (int i = startFrom; i < endBefore; i++) newStr += String.valueOf(str.charAt(i)); System.out.println(newStr); }}输出:llo使用StringBuilder有两个明显的优点:在将值附加到字符串之前,您不需要将值String.valueOf转换char为value,因为StringBuilder支持直接向其附加值。Stringchar您可以避免创建大量String对象,因为由于它String是一个不可变的类,因此每次尝试更改字符串都会创建一个新String对象。你可以在这里查看一个很好的讨论。public class Test { public static void main(String args[]) { String str = "Hello World!"; StringBuilder newStr = new StringBuilder(); int startFrom = 2, endBefore = 5;// test startFrom and endBefore indices for (int i = startFrom; i < endBefore; i++) newStr.append(str.charAt(i)); System.out.println(newStr); }}
0
0
0
holdtom
我假设这是一个家庭作业问题,但如果您想要提示,您可以使用它myString.toCharArray()来提取char[]字符串中每个字符的 a 并myString.charAt(0)获取索引 0 处的字符。您还可以从字符数组构造一个新的字符串,new String(myCharArray)因此您可以简单地获取原始字符串并获取字符数组(char[] myChars = myString.toCharArray();例如)将字符数组复制到一个新的、更短的数组中 ( char[] mySubstringChars = ...)将较短的 char 数组更改回 String ( String mySubstring = new String(mySubstringChars);)
0
0
0
随时随地看视频
慕课网APP
相关分类
Java
我要回答