Моя проблема не может получить объект «Предмет» (значение) из моей Treemap. Мне нужно отправить эту информацию в мой класс GUI и отобразить ее в JList, чтобы получить список выбора, поэтому вы можете легко выбирать и добавлять песни в список воспроизведения, но только то, что я получаю в качестве вывода, - «01, 02, 03, 04, 05», (ключ). Пожалуйста, помогите, потому что я начинаю и понятия не имею, что делать.Как получить значение из TreeMap в Java?
public class LibraryData {
private static class Item {
Item(String n, String a, int r) {
name = n;
artist = a;
rating = r;
}
// instance variables
private String name;
private String artist;
private int rating;
private int playCount;
public String toString() {
return name + " - " + artist;
}
}
private static Map<String, Item> library = new TreeMap<String, Item>();
static {
library.put("01", new Item("How much is that doggy in the window", "Zee-J", 3));
library.put("02", new Item("Exotic", "Maradonna", 5));
library.put("03", new Item("I'm dreaming of a white Christmas", "Ludwig van Beethoven", 2));
library.put("04", new Item("Pastoral Symphony", "Cayley Minnow", 1));
library.put("05", new Item("Anarchy in the UK", "The Kings Singers", 0));
}
public static String[] getLibrary() {
String [] tempa = (String[]) library.keySet().toArray(new String[library.size()]);
return tempa;
}
РЕШЕНИЕ:
Поскольку я передать значения в другой класс:
JList tracks = new JList(LibraryData.getLibrary());
я сделал что-то подобное, и это работает
public static Object[] getLibrary() {
Collection c = library.values();
return c.toArray(new Item[0]);
Спасибо, ребята , через 10 часов я, наконец, сделал это! }
Здесь есть один ответ. http://stackoverflow.com/questions/16246821/how-to-get-values-keys-from-hashmap –
Пожалуйста, напишите код, в котором вы пытаетесь получить 'Item'. – Christian
«library.get (« 01 »);' не работает? –