java.util.Map.Entry не может быть решена ошибка

Я пробовал следующий код как

package collectconstructor;
import java.util.Iterator;  
import java.util.Map;  
import java.util.Set;  

public class QuestionMap {

private int id;  
private String name;  
private Map<String,String> answers;  


public QuestionMap(int id, String name, Map<String, String> answers) {  
    super();  
    this.id = id;  
    this.name = name;  
    this.answers = answers;  
}  

public void displayInfo(){  
    System.out.println("question id:"+id);  
    System.out.println("question name:"+name);  
    System.out.println("Answers....");  
    Set<Entry<String, String>> set=answers.entrySet();  
    Iterator<Entry<String, String>> itr=set.iterator();  
    while(itr.hasNext()){  
        Entry entry= itr.next();  
        System.out.println("Answer:"+entry.getKey()+" Posted By:"+entry.getValue());  
    }  
}  

}

Здесь в следующем фрагменте кода

 Set<Entry<String, String>> set=answers.entrySet();  
 Iterator<Entry<String, String>> itr=set.iterator(); 

Я получил ошибку как

Несколько маркеров на этой линии

  • Метод entrySet() из типа Map ссылается на отсутствующий тип Map$Entry.

  • Запись не может быть разрешена для типа

Кто-нибудь может объяснить, почему я получаю эту ошибку?

Также я попытался импортировать

import java.util.Map.Entry;

но получил ту же ошибку.. пожалуйста, помогите!

1 ответ

Попробуй это:

Set<Map.Entry<String, String>> set = answers.entrySet();  
Iterator<Map.Entry<String, String>> itr = set.iterator();  

Вот Map.Entry это подчиненный интерфейс Map. Таким образом, мы будем доступны Map.Entry название. Он предоставляет методы для получения ключа и значения.

Другие вопросы по тегам