HashMap,TreeMap以及LinkedHashMap应用实例

在平常的工作场景下,也许我们有这样的需求场景:可能需要MAP中的key按照我们插入的顺序输出,可能需要MAP的key进行排序后输出,可能对输出的顺序无所谓,下面不多说,直接上实例:

import java.util.HashMap;
import java.util.LinkedHashMap;
import java.util.Map;
import java.util.Set;
import java.util.TreeMap;

public class MapTest {
    public static void main(String[] args) {
        Map<String,String> testHashMap = new HashMap<String,String>();
        testHashMap.put("2", "11");
        testHashMap.put("1", "22");
        testHashMap.put("6", "33");
        testHashMap.put("4", "44");
        testHashMap.put("3", "33");
        testHashMap.put("9", "44");
        testHashMap.put("8", "33");
        testHashMap.put("7", "44");
        Set<String> testHashSet = testHashMap.keySet();
        System.out.println("---随机输出---");
        for(String strHash : testHashSet){
            System.out.println(strHash + "-" + testHashMap.get(strHash));
        }

        Map<String,String> testTreeMap = new TreeMap<String,String>();
        testTreeMap.put("2", "11");
        testTreeMap.put("1", "22");
        testTreeMap.put("6", "33");
        testTreeMap.put("4", "44");
        Set<String> testTreeSet = testTreeMap.keySet();
        System.out.println("---排序输出---");
        for(String strTree : testTreeSet){
            System.out.println(strTree + "-" + testTreeMap.get(strTree));
        }
        
        Map<String,String> testLinkedHashMap = new LinkedHashMap<String,String>();
        testLinkedHashMap.put("2", "11");
        testLinkedHashMap.put("1", "22");
        testLinkedHashMap.put("6", "33");
        testLinkedHashMap.put("4", "44");
        Set<String> testLinkedHashSet = testLinkedHashMap.keySet();
        System.out.println("---按插入顺序输出---");
        for(String strLinkedHash : testLinkedHashSet){
            System.out.println(strLinkedHash + "-" + testLinkedHashMap.get(strLinkedHash));
        }
    }
}

输出内容如下:

---随机输出---
3-33
2-11
1-22
7-44
6-33
4-44
9-44
8-33
---排序输出---
1-22
2-11
4-44
6-33
---按插入顺序输出---
2-11
1-22
6-33
4-44


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值