2016-06-20 6 views
1

複数の配列があり、文字列に格納されているユーザーの入力に応じて、対応する配列にアクセスする必要があります。 たとえば、ユーザーが「/ kit food」と入力してenterを押すと、文字列がサブストリングになり「food」になります。 私はすでにfoodという配列を持っていて、その内部のすべての項目をコンソールに出力したいとします。Java:呼び出す配列と名前の配列は、配列や変数の異なる文字列に格納されます。

String[] food = {"apple","carrot","pickle"}; 
String[] tools = {"hoe","shovel","rake"}; 

userInput = "food"; //already sub stringed from "/kit food" 

for(String item : userInput){ //I need it to access the array food 
    System.out.println(item); 
} 

これを行うことが可能であろう: ここで私が何をしようとしているのサンプルコードはありますか?または、すべてのキットのif/elseステートメントを手動でコード化するだけでいいですか?

+5

を使用します。文字列を配列に関連付ける必要がある場合は、 'Map'を使うことを検討してください。 – azurefrog

+1

各配列のキーがその名前である 'Map'に配列を追加できます。次に、 'objMap.get(userInput)'を使用して、ユーザーが要求した配列を取得します。 – Zircon

+0

'' Map''インタフェースは、このケース用に設計されています。https://docs.oracle.com/javase/tutorial/collections/interfaces/map.html –

答えて

0

Java変数がそのように動作しないのJava 7

public static void main(String[] args) { 
     String[] food = {"apple", "carrot", "pickle"}; 
     String[] tools = {"hoe", "shovel", "rake"}; 

     String userInput = "food"; //already sub stringed from "/kit food" 

     Map<String, String[]> map = new HashMap<>();  
     map.put("food", food); 
     map.put("tools", tools); 

     for (String item : map.get(userInput)) { //I need it to access the array food 
      System.out.println(item); 
     } 
    } 
+0

私を助けてくれてありがとう、私はまた、マップやハッシュマップについてYouTubeでより良い理解のために検索しました。 :) – Azurasy

関連する問題