其中 rows 和 footer 又是List<Map<String,Object>>这样的 list里面放多个map
其实一般理解为 一个JSONObject 里面有3组值 total rows footer
rows 和 footer 又是 JSONArray格式的. JSONArray里面又是多个JSONObject
原因是你向hashMap中添加元素是是添加的引用,虽然两个key是一样,但是引用不同,如果要避免这种情况需要重写两个函数 public boolean equals(Object obj)和 public int hashCode()首先Map是键值对集合,因为map是无序的键和值是一一对应的,一个键(key)对应一个值,通过键(key)来找值,但是如果你定义两个同样的key,这样就违背了java对map的定义,键和值是一一对应的;
特别说明:建的值是不能相同的,这个语法会报错,
但是如果你的键是引用类型(存的是地址),在语法上是不会报错的,后一个会将前一个覆盖,从而指向后一个键的值
public class TestEquals {public static void main(String[] args) {
String s1=new String("abc")
String s2=new String("abc")
Map map=new HashMap()
map.put(s1, "abc123")
map.put(s2, "ABC456")//第二个会覆盖第一个元素
System.out.println(map.size())
System.out.println(map.get(s1))
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)