我刚接触Java,想知道是否有一种方法可以使HashMap的值既可以是字符串又可以是ArrayList:
HashMap<String, HashMap<String, ArrayList<String>>> map = new HashMap<String, HashMap<String, ArrayList<String>>>();
map.putIfAbsent("238991", new HashMap<String, ArrayList<String>>());
map.get("238991").put("OrderID", new ArrayList<>());
map.get("238991").get("OrderID").add("1234H");
map.get("238991").get("OrderID").add("1233B");
map.get("238991").put("Name", new ArrayList<>());
map.get("238991").get("Name").add("Smith, John");
System.out.println(map.get("238991"));
System.out.println(map.get("238991").get("Name").get(0));
我希望只需为名称添加字符串,而不是仅访问列表的第一个元素。这可行吗?
StringOrArrayList
类型,并自己实现不相交的联合逻辑。 - Andy TurnerMap<Integer, Order>
对象,为什么不能使用?深度嵌套的数据结构很难处理 - 这就是为什么面向对象编程存在的原因。 - dimo414