java for循环没有产生预期的结果

时间:2016-10-01 13:11:13

标签: java for-loop

我想问一下这个循环我做了什么。我有一个名为 content 的字符串,其字符串值为 " NameXesme esmeXMobileX2903489283482903X NameXmer merXMobileX0697905967X"

我的for循环如下:

for(int j = 0; j < content.length(); j++){
        if(Character.toString(content.charAt(j)).equalsIgnoreCase("n"))
            numberTxt.setText(content.charAt(j)+""+j); }

在我的numberTxt组件( JTextfield )中可以看到的是&#34; N0 &#34;(Nzero),但我看到的输出是&#34; N41 &#34;。我已经完成了其他我知道的代码,

for(int j = 0; j < content.length(); j++){
    if(content.charAt(j) == 'N') numberTxt.setText(content.charAt(j)+""+j); }

但我仍然没有得到正确的结果。我做对了吗?还是我错过了什么?

注意到缺少 break 语句,没有足够的时间来删除前面的问题。

1 个答案:

答案 0 :(得分:2)

您的字符串多次包含N。 如果你想要第一次出现,那么break循环。 你可以尝试一下:

for(int j = 0; j < content.length(); j++){
    if(content.charAt(j) == 'N'){
        numberTxt.setText(content.charAt(j)+""+j);
        break;
    }
}