2015-10-08 3 views
1

Мне нужно сохранить коллекцию и получить к ней доступ (из цикла), но я не могу найти способ сделать это .. любые предложения для моей программы .. Я только начал изучать Java , БлагодаряСохранение коллекции в цикле

public class Main { 

public static void main(String[] args) { 
    // my hashmap 
    Map<String, List<String>> test_01 = new HashMap<>(); 
    Scanner scanner = new Scanner(System.in); 
    String answer; 
    List<String> name = new ArrayList<>(); 
    List<String> time = new ArrayList<>(); 
    String lake_Name, lake_time; 
    do { 
     System.out.println("Enter the name of the lake : "); 
     lake_Name = scanner.nextLine(); 
     name.add(lake_Name); 

     System.out.println("Enter the name of the running time : "); 
     lake_time = scanner.nextLine(); 
     time.add(lake_time); 
     //I'm doing this just in case my user does not enter a number 

     System.out.println("Do you want add another lake : \"Y\" for Yes OR another key to see the statistic the problem "); 
     answer = scanner.nextLine(); 
    } while (answer.equalsIgnoreCase("Y")); 
    //We can continue here to do more stuff 
    for (int i = 0; i < name.size(); i++) { 
     putObjects(test_01, name.get(i), time.get(i)); 
    } 

    /*Collection<String> x = test_01.get("x"); 
    System.out.println(x);*/ 
    // to get unique elements 
    Set<String> treesetList = new TreeSet<String>(name); 
    // to iterate again 
    List<String> list = new ArrayList<> (treesetList); 


    for (String s : treesetList){ 
     Collection<String> uno = test_01.get(s); 
     System.out.println(uno); 
    } 


} 

private static void putObjects (Map<String, List<String>> a, String key, String value) { 
    List<String> myClassList = a.get(key); 
    if(myClassList == null) { 
     myClassList = new ArrayList<>(); 
     a.put(key, myClassList); 
    } 
    myClassList.add(value); 
} 

} 

Моей проблема здесь

for (String s : treesetList){ 
     Collection<String> uno = test_01.get(s);     
     System.out.println(uno); 
    } 

Поскольку я должен доступ к различным озерным именам и его коллекции в «test_01» с карты ... Я не знаю, как сохранить в Diferent массивы, которые имеют разные имена (или создают их), поэтому я могу проверить его время позже .... Я преобразую коллекцию в «double» позже ...

ответ

0

Создайте коллекцию, затем используйте add.

List<String> aList = new ArrayList<String>();  
for (String s : treesetList){ 
    aList.add(test_01.get(s)); 
} 

for (String str : aList){ 
    System.out.println(str); 
} 
+0

Спасибо. Я попробую ваш ответ :) – hbrtxito

Смежные вопросы