map排序及keyset顺序问题

package test; import java.util.HashMap; import java.util.Hashtable; import java.util.Iterator; import java.util.LinkedHashMap; import java.util.Map; import java.util.TreeMap; public class testKeySetSort { public static void main(String[] args) { System.out.println("## HashTable --降序 ##"); Hashtable<String, String> ht = new Hashtable<String, String>(); ht.put("c1","000"); ht.put("a3","000"); ht.put("c2","000"); ht.put("c5","000"); ht.put("c4","000"); Iterator<String> it = ht.keySet().iterator(); while(it.hasNext()) { System.out.println(it.next()); } System.out.println("## TreeMap --升序 ##"); TreeMap<String,String> tm = new TreeMap<String,String>(); tm.put("c1","000"); tm.put("a3","000"); tm.put("c2","000"); tm.put("c5","000"); tm.put("c4","000"); Iterator<String> it2 = tm.keySet().iterator(); while(it2.hasNext()) { System.out.println(it2.next()); } System.out.println("## HashMap --乱序 ##"); Map<String, String> hm = new HashMap<String, String>(); hm.put("c1","000"); hm.put("a3","000"); hm.put("c2","000"); hm.put("c5","000"); hm.put("c4","000"); Iterator<String> it3 = hm.keySet().iterator(); while(it3.hasNext()) { System.out.println(it3.next()); } System.out.println("## LinkedHashMap --原序 ##"); LinkedHashMap<String, String> lhm = new LinkedHashMap<String, String>(); lhm.put("c1","000"); lhm.put("a3","000"); lhm.put("c2","000"); lhm.put("c5","000"); lhm.put("c4","000"); Iterator<String> it4 = lhm.keySet().iterator(); while(it4.hasNext()) { System.out.println(it4.next()); } } }
输出:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?