入境确实不是
String。它是
Map.Entry,因此您可以根据需要将其转换为此类型。
但是,自从大约10年前引入Java 1.5以来,您几乎几乎不需要铸造。而是使用泛型定义映射并使用类型安全的编程。
不幸的是,您的代码不清楚。您是说地图的关键或价值是
String?假设键是字符串,值可以是字符串或映射。(顺便说一句,这是非常糟糕的做法,因此,我建议您询问其他问题,以描述您的任务是什么,并询问如何设计程序。)
但无论如何,到目前为止,我可以为您提供建议:
public static void hashMapper(Map<String, Object> lhm1) throws ParseException { for (Map.Entry<String, Object> entry : lhm1.entrySet()) { String key = entry.getKey(); Object value = entry.getValue(); if (value instanceof String) { System.out.println(value); } else if (value instanceof Map) { Map<String, Object> subMap = (Map<String, Object>)value; hashMapper(subMap); } else { throw new IllegalArgumentException(String.valueOf(value)); } }}


