1

スプリット機能を使っています

string = data.con_loop[i].split("\\.");

文字列入力は「0.9.L」です。しかし、

string[2]=="L"

に評価されませんtrue。なんで?

4

4 に答える 4

2

equals("L")の代わりに使用する必要があり==ます。

if(string[2].equals("L"))...
于 2012-04-06T12:20:58.550 に答える
1

compareTo(string)また、次の関数を使用できます。

if(string[2].compareTo("L")){ // then }

.compareTo()0文字列が指定した内容と等しい場合、関数はあなたを返します。

公式ドキュメントを読む必要があります:http: //docs.oracle.com/javase/6/docs/api/java/lang/String.html

編集:compareTo()機能が動作しない場合は、試してくださいcompareToIgnoreCase()

于 2012-04-06T12:25:21.360 に答える
0
if(string[2]=="L")

それをに変更します

if(string[2].equals("L"))

あなたの場合、==はそれらの2つのオブジェクトの参照が同じであるかどうかをチェックします。したがって、それらの内容を確認する場合は、equals()メソッドを使用する必要があります。

注:==文字列インターンの概念で機能します

于 2012-04-06T12:21:07.590 に答える
0

二重スラッシュは必要ありません。次に、equalsを使用してチェックします。

string = data.con_loop[i].split("\.");
if(string[2].equals("L")) {
    //.....
}
于 2012-04-06T12:21:16.443 に答える