2016-03-28 5 views
4

私はゲームのタイプを構築しています(少なくとも現在のものです...)。基本的には、ゲームをプレイしている人はすべて、 (はい私はカナダ人です)とその資本と彼らが正しく行ったかどうかを教えるためのプログラムです。2つの異なる配列の文字列コンポーネントを比較する方法(Java)

例。、

array1[ ] = {ontario, manitoba, saskatchewan}; 
array2[ ] = {toronto, winnipeg, regina}; 

Iは、配列1の部品1は、配列2の部品1に等しい場合、それは正確だと、このような方法でそれをコーディングします。申し訳ありませんが、私はJavaとこのサイトを初めて利用しています。

+1

この目的のためにマップを使用する方がよいでしょう。 –

+0

現在のコードを表示してください。 –

答えて

3

この目的のためにマップを使用できます。次のスニップされた実装は、小文字の州を首都にマップします。

Map<String,String> stateCapital = new HashMap(){{ 
     put("ontario","toronto"); 
     put("manitoba","winnipeg"); 
     put("saskatchewan","regina"); 
    }}; 

ステート名がサテの名前を示し、capitalNameは首都の名前を示している場合、あなたは式によって返されるブール値によって組み合わせを確認することができます:あなたがすでに持っている場合は

stateCapital.get(stateName.toLowerCase()).equalsIgnoreCase(capitalName) 

すべて文脈名と頭文字を配列で指定すると、それらをマップに入れることができます。

1

私はこれまでの回答に同意します。ハッシュマップはおそらくあなたの目的に最適です。ただし、配列を使用してそれを実行することはできます。どのようにしてゲームをしたいのか分かりませんが、次のようなものを試すことができます:

for (int i = 0; i < array1.length; i++) { 
    if (userInput.compareTo(array2[i]) == 0) { 
     return correctAnswer; 
    } 
} 
関連する問題