HashMap和JSONObject的问题
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了HashMap和JSONObject的问题相关的知识,希望对你有一定的参考价值。
先调用HashMap的put方法,添加一系列key和value,然后调用HashMap的toString方法,得出的输出结果的顺序和添加顺序不一样。
请问这个是怎么排序的,还有怎么确定这个排序的,如何按照指定顺序输出结果。
因为后面用将HashMap转成JSONObject,然后再将JSONObject传给web前台使用,我发现JSONObject的key:value顺序和HashMap的是一样的,所以如何解决前面的问题呢?
可是我要插入的东西有的是String、int有的是数组,这样的话,有办法确定HashMap的排序么?
追答可以是可以,只要你对它们的HashCode()方法重写一次,按你想排的写返回值就行了.
比如你写的算法是想要“13”排第一的,那你就写return 13.equals(s)?1:......这个安排比较复杂,而且没有意义。你要排序就要对应的Map就行了(查查JDK文档)。
还有,使用数组返回的hashCode我不知怎么定义,你最好写一个结构类,再放入一个数组,然后重写hashCode();
加上trycatch(Exception)捕捉一下
以上是关于HashMap和JSONObject的问题的主要内容,如果未能解决你的问题,请参考以下文章
JSONObject JSONArray json字符串 HashMap ArryList 在java开发中用到的数据结构