Как я могу ссылаться на объект, который является типом в карте Java? - PullRequest
0 голосов
/ 22 марта 2011

Я новичок и застрял. У меня есть карта, которая имеет тип String, Object. Однажды я объявил это:

Map<String, Fish> fishes = new HashMap<String, Fish>();

что мне теперь делать. Как мне получить мои значения в объекте рыбы - я застрял в том, как ссылаться на объект рыбы. Я знаю, что должен использовать «get», но все, что я пытаюсь, не работает.

Извинения, я знаю, что это просто, но помощь будет очень признательна.

Ответы [ 4 ]

1 голос
/ 22 марта 2011

Во-первых, ваше объявление немного отклонено, оно должно быть:

Map <String, Fish>  fishes = new HashMap <String, Fish> ();

Чтобы добавить в него значения, вы должны иметь код, похожий на

Fish trout = new Fish();
fishes.put("trout",trout);

Чтобы получить рыбупо ключу "форель" вы получаете доступ к нему с помощью команды get следующим образом:

fishes.get("trout");

, которая возвращает объект Fish с ключом "форель"

0 голосов
/ 22 марта 2011
Map<String, Fish> fishes = new HashMap<String, Fish>();

Чтобы получить всех своих рыб ...

for (String key : fishes.keySet()) {
    Fish fish = fishes.get(key);
}
0 голосов
/ 22 марта 2011

Похоже, у вас проблемы с синтаксисом, попробуйте это:

Map<String, Fish>  fishes = new HashMap<String, Fish>();

После этого вы можете использовать get и put для ввода и вывода элементов из HashMap.

Документация по Java HashMap

0 голосов
/ 22 марта 2011
//creating new Fish object - no big deal
Fish fish = new Fish();
//putting fish to map
fishes.put("MyFish", fish);
//getting your fish
Fish myFish = fishes.get("MyFish");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...