1

我有一个基本的字符串变量,其中包含字母 xa 总共三次。我尝试使用 charAt 在字符串中找到 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 循环来循环遍历寻找 x 的字符串?

我只需要一些建议来看看我的代码哪里出错了。

4

1 回答 1

2

你找不到字符使用charAt-一旦你知道它在哪里,它是为了获取一个字符。

有没有办法实现 for 循环以循环通过字符串寻找 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);
}

打印0 3 6'x'字符串中的三个位置。

于 2013-02-10T13:41:55.500 回答