Амперсанд как ключ hashmap не работает в Java? - PullRequest
0 голосов
/ 22 сентября 2010

Я использую класс 'Properties' в Java, который наследуется от HashMap.Я строю базовый компилятор в hashmap.Я знаю, что это можно упростить, используя что-то кроме хэш-карты.

Вот мой код ...

Properties inputSource = new Properties();
inputSource.put("ERROR", "ERROR");
inputSource.put("GET", "GET");
inputSource.put("PRINT", "PRINT");
inputSource.put("&", "&"); // this point input resource error.

Я попытался вместо этого поставить "\ &", и это все ещене работалМожно ли как-нибудь добавить & в качестве ключа hashmap?

Ответы [ 4 ]

3 голосов
/ 22 сентября 2010

Это должно работать. Ошибка в вашем случае может быть в другом месте, чем вы подозреваете

это то, что я пытался -

Properties inputSource = new Properties();
inputSource.put("ERROR", "ERROR");
inputSource.put("PRINT", "PRINT");
inputSource.put("&", "&"); // this point input resource error.
inputSource.put("GET", "GET");

System.out.println(inputSource.get("&"));

выход

&
2 голосов
/ 22 сентября 2010

Ваш код работает отлично для меня .. что вы видите сообщение об ошибке?Это может быть ваша IDE, показывающая ненужное предупреждение

0 голосов
/ 22 сентября 2010

Для этого конкретного фрагмента кода, возможно, HashSet более подходит.Свойства, кажется, делают намного больше, чем вам нужно.Конечно, у вас могут быть некоторые требования, которые не ясны из вашего вопроса.

0 голосов
/ 22 сентября 2010

только что запустил ваш код под затмением helios, jvm 1.4.2 работает отлично

Можете ли вы привести здесь ошибку, которую вы получаете?

...