常见Map 及 ArrayList 是否有序总结

说明:此处的排序 是指:

1: 往集合中插入元素的顺序与遍历元素的顺序的关系;

2: 往对象中插入元素否会根据元素的大小排序

 

?
public  class  MapSortTest {
 
     public  static  void  main(String[] args) {
         
         System.out.println( "放入顺序为:a:aaa c:ccc b:bbb d:ddd " );
         System.out.println( "HashMap 排序测试" );
         Map map = new  HashMap();
         map.put( "a" , "aaa" ); 
         map.put( "c" , "ccc" );
         map.put( "b" , "bbb" );
         map.put( "d" , "ddd" );
         Iterator iterator = map.keySet().iterator();
         while  (iterator.hasNext()) {
             Object key = iterator.next();
             System.out.println( "key:" +key+ "         value:"  + map.get(key));
         }
         System.out.println( "HashMap 进出无次序 ; key大小无次序 " );
         System.out.println( "***********************************************************" );
         
         
         System.out.println( "Hashtable 排序测试" );      
         Hashtable tab = new  Hashtable();
         tab.put( "a" , "aaa" );
         tab.put( "c" , "ccc" );
         tab.put( "b" , "bbb" ); 
         tab.put( "d" , "ddd" );
         Iterator iterator_1 = tab.keySet().iterator();
         while  (iterator_1.hasNext()) {
             Object key = iterator_1.next();
             System.out.println( "key :" +key+ "             value:" + tab.get(key));
         }
         System.out.println( "Hashtable 进出无次序 ; key大小无次序 " );
         System.out.println( "***********************************************************" );
         
         System.out.println( "TreeMap 排序测试" );            
         TreeMap tmp = new  TreeMap();
         tmp.put( "a" , "aaa" );
         tmp.put( "c" , "ccc" );
         tmp.put( "b" , "bbb" );
         tmp.put( "d" , "ddd" );
         Iterator iterator_2 = tmp.keySet().iterator();
         while  (iterator_2.hasNext()) {
             Object key = iterator_2.next();
             System.out.println( "key:" +key+ "          value:"  + tmp.get(key));
         }
         System.out.println( "TreeMap 进出无次序 ; key大小从小到大 " );
         System.out.println( "***********************************************************" );
         
         System.out.println( "LinkedHashMap 排序测试" );              
         LinkedHashMap linkedHashMap = new  LinkedHashMap();
         linkedHashMap.put( "a" , "aaa" );
         linkedHashMap.put( "c" , "ccc" );
         linkedHashMap.put( "b" , "bbb" );
         linkedHashMap.put( "d" , "ddd" );
         Iterator iterator2 = linkedHashMap.keySet().iterator();
         while  (iterator2.hasNext()) {
             Object key = iterator2.next();
             System.out.println( "key:" +key+ "          value:"  + linkedHashMap.get(key));
         }      
         System.out.println( "LinkedHashMap 先进先出; key大小无次序 " );
         System.out.println();
         
         System.out.println( "ArrayList 排序测试" );
         System.out.println( "放入顺序为:aaa ccc bbb ddd" );
         ArrayList arrayList= new  ArrayList();
         arrayList.add( "aaa" );
         arrayList.add( "ccc" );
         arrayList.add( "bbb" );
         arrayList.add( "ddd" );
         System.out.println( "ArrayList 先进先出;值大小无次序 " );
//      Collections.sort(arrayList);
         for ( int  i= 0 ;i<arrayList.size();i++){
             System.out.println(arrayList.get(i));
         }
         System.out.println( "***********************************************************" );
     }
 
}


 

运行结果:

?
放入顺序为:a:aaa c:ccc b:bbb d:ddd
HashMap 排序测试
key:d         value:ddd
key:b         value:bbb
key:c         value:ccc
key:a         value:aaa
HashMap 进出无次序 ; key大小无次序
***********************************************************
Hashtable 排序测试
key :b             value:bbb
key :a             value:aaa
key :d             value:ddd
key :c             value:ccc
Hashtable 进出无次序 ; key大小无次序
***********************************************************
TreeMap 排序测试
key:a          value:aaa
key:b          value:bbb
key:c          value:ccc
key:d          value:ddd
TreeMap 进出无次序 ; key大小从小到大
***********************************************************
LinkedHashMap 排序测试
key:a          value:aaa
key:c          value:ccc
key:b          value:bbb
key:d          value:ddd
LinkedHashMap 先进先出; key大小无次序
 
ArrayList 排序测试
放入顺序为:aaa ccc bbb ddd
LinkedHashMap 先进先出;值大小无次序
aaa
ccc
bbb
ddd
***********************************************************
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值