-1

次の行を別の配列に保存しようとしていました。

1908,Souths,Easts,Souths,Cumberland,Y,14,12,4000

私が使用しているコードでは、 の整数値が返されますが、 、およびyear[i]の値はゼロになります。誰でも私を助けてもらえますか?私のコードは次のとおりです。winningScore[i]loosingScore[i]crowd[i]

str[i] = inputFile.nextLine();
StringTokenizer tok = new StringTokenizer(str[i], ",");

while (tok.hasMoreTokens()) {   
    year[i] = Integer.parseInt (tok.nextToken());
    winteam[i] = tok.nextToken();    
    loosingteam[i] = tok.nextToken();
    minor[i] = tok.nextToken();
    wooden[i] = tok.nextToken();
    held[i] = tok.nextToken();
    if(held[i] == "Y") {
        winningScore[i] = Integer.parseInt (tok.nextToken()); 
        loosingScore[i] = Integer.parseInt (tok.nextToken());
        crowd[i] = Integer.parseInt (tok.nextToken());
    }
    else {
        break;
    }
}
4

1 に答える 1

2

==は 2 つの参照を等しくするためにObject#equals使用され、メソッドは2 を等しくするために使用されObjectます。

if(held[i] == "Y")文字列の等号化は、次のような equals メソッドで行う必要があります

if(held[i].equals("Y")){...}
于 2013-05-17T05:49:23.717 に答える