Java 查找各种字符';在一条线之内

Java 查找各种字符';在一条线之内,java,string,char,Java,String,Char,我有一个基本的字符串变量,它总共包含三次字母x。 我尝试使用charAt在字符串中查找x,然后打印char及其旁边的两个字符 我在代码中遇到了一个障碍,希望能得到任何帮助 这是我的密码 public class StringX{ public static void main(String[] args){ String ss = "xarxatxm"; char first = ss.charAt(0); char last == ss.

我有一个基本的字符串变量,它总共包含三次字母x。 我尝试使用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


我只需要一些建议,看看我的代码哪里出了问题。

使用
charAt
无法找到字符-这是为了在知道字符的位置后获取字符

有没有一种方法可以实现for循环,从而在字符串中循环查找x

您需要使用来查找字符的位置。传递初始位置,即到目前为止找到的最后一个
x
的位置,以获得后续位置

例如,下面的代码

String s = "xarxatxm";
int pos = -1;
while (true) {
    pos = s.indexOf('x', pos+1);
    if (pos < 0) break;
    System.out.println(pos);
}
String s=“xarxatxm”;
int pos=-1;
while(true){
位置=s.indexOf('x',位置+1);
如果(位置<0)中断;
系统输出打印项次(pos);
}

对于字符串中
'x'
的三个位置。

“x”
是一个字符串,
'x'
是一个字符,是的,谢谢。很好!我将使用这段代码并操作以生成所需的内容。我会告诉你我的进展,谢谢你。