我有一个基本的String变量,其中包含字母x总共三次。 我试图使用charAt在String中找到x,然后打印char和它旁边的下两个字符。
我在我的代码中遇到了障碍,并希望得到任何帮助。
这是我的代码。
public class StringX{
public static void main(String[] args){
String ss = "xarxatxm";
char first = ss.charAt(0);
char last == ss.charAt(3);
if(first == "x"){
String findx = ss.substring(0, 2);
}
if(last == "x"){
String findX = ss.substring(3, 5);
}
System.out.print(findx + findX);
}
}
另外,有没有办法实现for循环遍历String寻找x呢?
我只需要一些建议,看看我的代码出错了。
答案 0 :(得分:2)
您无法使用charAt
找到字符 - 一旦您知道某个字符的位置,就会获取字符。
有没有办法实现for循环遍历String寻找x呢?
您需要使用indexOf
来查找字符位置。通过初始位置,该位置是您到目前为止找到的最后一个x
的位置,以获得后续位置。
例如,下面的代码
String s = "xarxatxm";
int pos = -1;
while (true) {
pos = s.indexOf('x', pos+1);
if (pos < 0) break;
System.out.println(pos);
}
prints 0 3 6
表示字符串中'x'
的三个位置。