[javaSE] 集合框架(Map概述)详解编程语言

Map集合,将key对象映射到value对象

三个主要的子类:HashtableHashMapTreeMap

 

Hashtable:底层是哈希表数据结构,不允许使用null值,线程同步

HashMap:底层是哈希表数据结构,允许使用null值,线程不同步

TreeMap:底层是二叉树数据结构,线程不同步,可以用于给Map集合中的键排序

 

使用keySet()方法遍历Map集合

调用Map对象的keySet()方法,得到Set对象,这里存储的是所有的键

 

import java.util.HashMap; 
import java.util.Map; 
import java.util.Set; 
import java.util.TreeMap; 
 
 
public class MapDemo { 
 
    /** 
     * @param args 
     */ 
    public static void main(String[] args) { 
        Map<String,String> map=new HashMap<String,String>(); 
        map.put("name", "taoshihan"); 
        map.put("age", "100"); 
        map.put("gender", "female"); 
         
         
        Set<String> keySet=map.keySet(); 
        for(String key:keySet){ 
            System.out.println(map.get(key)); 
        } 
         
        //TreeMap可排序 
        Map<StudentTreeMap,String> treeMap=new TreeMap<StudentTreeMap,String>(); 
        treeMap.put(new StudentTreeMap("taoshihan1", 40), "陶士涵"); 
        treeMap.put(new StudentTreeMap("taoshihan2", 30), "陶士涵2"); 
        treeMap.put(new StudentTreeMap("taoshihan3", 50), "陶士涵3"); 
        Set<StudentTreeMap> treeMapSet=treeMap.keySet(); 
        for(StudentTreeMap key:treeMapSet){ 
            System.out.println(key.name+"====="+key.age); 
        } 
    } 
 
} 
class StudentTreeMap implements Comparable<StudentTreeMap>{ 
     
    public int age; 
    public String name; 
    public StudentTreeMap(String name,int age) { 
        this.name=name; 
        this.age=age; 
    } 
    @Override 
    public int compareTo(StudentTreeMap o) { 
        if(o.age<this.age){ 
            return 1; 
        }else{ 
            return -1; 
        } 
    } 
     
}

 

[javaSE] 集合框架(Map概述)详解编程语言

 

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/12643.html

(0)
上一篇 2021年7月19日
下一篇 2021年7月19日

相关推荐

发表回复

登录后才能评论