2014-12-19 2 views
0

Возможно ли проверять тип данных данных при повторении через HashMap<String,Object>?определить тип данных при повторении через hashmap в java

while(iterator.hasNext) { 
    Map.Entry pairs = (Map.Entry) iterator.next(); 
    String key = pairs.getKey(); 
    <Type> value = (Type) pairs.getValue();   
} 

Карта имеет сочетание Boolean, String и ArrayList<String> типов в качестве значений. Я хотел бы определить тип данных значения во время выполнения и правильно применить его.

+3

Зачем вы смешивали несколько типов в своей карте? Вы можете использовать «экземпляр», но это потребует проверки каждого элемента. –

+0

Вы можете сначала проверить значение 'value! = Null', а затем вызвать' value.getClass() '. Для чего вам это нужно? – Thomas

+0

Я получаю данные JSON после того, как вы оставите ws call, и данные содержат смесь логических, строковых, arraylist типов. Я преобразовал JSON в объект java (hashMap) для последующего использования в рамках программы. Затем я понял, что мне нужно определить его тип во время выполнения. Спасибо за ваш совет. – DaeYoung

ответ

0

Я предлагаю вам использовать объект mapper, такой как Jackson или GSON, для преобразования между json и вашим объектом и не делать это вручную.

+0

Благодарим вас за советы. Я фактически использовал ObjectMapper от Jackson для преобразования JSON в Java HashMap. – DaeYoung

Смежные вопросы