Как получить набор записей из TreeMap на Java
В этом примере показано, как получить все объекты ключа и значения TreeMap в виде набора объектов типа Вход. Класс Entry имеет методы getters для доступа к сведениям об элементе. Метод entrySet() возвращает все элементы в виде набора объектов.Вы увидите, что entrySet() возвращает набор Карта.Запись< К,В> . Что это значит, что из Древовидная карта< Т1,Т2> , у вас будет Комплект< Map.Entry< Т1,Т2> > и оттуда вы можете получить ключи и значения напрямую, или вы также можете пройти через Итератор< Map.Entry< Т1,Т2> > и каждый элемент в Iterator имеет тип Карта.Запись< Т1,Т2> . Итак, чтобы получить ключ и его значение, используйте эти два методаgetKey() и getValue().
import java.util.Iterator;Output:
import java.util.Map;
import java.util.Set;
import java.util.TreeMap;
public class entrySet {
public static void main(String args[]) {
TreeMap< Строка, целое число> treemap = новая карта дерева< Строка, целое число> ();
treemap.put("A", 1);
treemap.put("B", 2);
treemap.put("C", 3);
treemap.put("D", 4);
treemap.put("E", 5);
treemap.put("F", 6);
//метод entrySet() возвращает объект Set типа Map.Entry< Строка, целое число>
Набор< Map.Entry< Строка, целое число> > set = treemap.entrySet();
System.out.println("С итератором");
//можно получить Iterator
Iterator it = set.iterator();
while(it.hasNext()){
Map.Entry me = (Map.Entry)it.next();
System.out.print(me.getKey() + ": ");
System.out.println(me.getValue());
}
System.out.println("Без итератора");
//или вы можете получить ключ и его значение напрямую, не проходя через Iterator
for (Map.Entry< Строка, целое число> me : set) {
System.out.print(me.getKey() + ": ");
System.out.println(me.getValue());
}
}
}
With IteratorReferences:
A: 1
B: 2
C: 3
D: 4
E: 5
F: 6
без Iterator
A: 1
B: 2
C: 3
D: 4
E: 5
F: 6
Coderanch: Iterator and EntrySet