2016-01-09 4 views
-4

У меня есть ArrayListкак преобразовать список в карты в Java

List<String> li= new ArrayList<String>() ; 
li.add("a"); 
li.add("b"); 

Я хочу, чтобы преобразовать ArrayList в HashMap Как это

HashMap<String, List<String>> s= new HashMap<String,List<String>>(); 

Пожалуйста, помогите мне, как преобразовать в HashMap

+6

карта имеет ключи и значения. Ваш текущий список ключей или ваших значений? – TangledUpInBlue

+0

извините HashMap > = new HashMap >(); –

+0

У вас есть список как ценность для вашей карты, но что является ключевым? – Rahul

ответ

0
final List<String> originalList = Arrays.asList("a","b"); 
    //JAVA 8 
    //Always initialize maps/collections with their Interface 
    final Map<Integer, String> mapFromListJavaEight = 
      IntStream.range(0,originalList.size()) 
      .mapToObj(index -> index) 
      .collect(Collectors.toMap(Function.identity(), 
        originalList::get)); 
    // JAVA < 8 & JAVA >= 5 
    final Map<Integer, String> mapFromListJavaSeven = 
      new HashMap<>(); 
    for(int i = 0; i < originalList.size(); i++){ 
     mapFromListJavaSeven.put(i,originalList.get(i)); 
    } 
3

You need to look at this List<Item> list; Map<Key,Item> map = new HashMap<Key,Item>(); for (Item i : list) map.put(i.getKey(),i);

+0

, но для этого сначала мы сделали класс Item после того, как мы это сделаем. Правильно ли это письмо? –

+0

Это зависит от потребностей пользователя. Вы можете указать объект String или любой другой, который вы хотите. Пожалуйста, просмотрите приведенную ссылку для получения более подробной информации. –

+0

как PLZ дать пример –

0

общественный статический недействительный основной (String []) {арг

String name; 
      int count=0; 
List<String> li= new ArrayList<String>() ; 
    li.add("a"); 
    li.add("d"); 
    li.add("b"); 
    li.add("e"); 
    Iterator i1 = li.iterator(); 
    while(i1.hasNext()) 
      { 
     name = (String)i1.next(); 
     System.out.println(name); 
      } 

    HashMap <Integer,String> hm = new HashMap<Integer,String>(); 
    for(String i : li) 
    { 
    hm.put(count++,i); 
    } 
    System.out.println("after converting list to map "); 
    System.out.println(hm); 
} 
Смежные вопросы