小言_互联网的博客

java 集合 详解(三) Map

232人阅读  评论(0)

Map

1:可以通过某个key可以直接定位到一个value值
2:key 无序 value 无序可重复

基本使用

HashMap
1:Hashset基于HashMap
2:基本使用 增删查改

import java.util.HashMap;

public interface MyHashMap {
    public static void main(String[] args) {
        HashMap<String, Object> hashMap = new HashMap<>();
        hashMap.put("1","a");//添加数据
        hashMap.put("1","b");//重复的会覆盖
        hashMap.remove("1");//删除
        hashMap.get("1");//查询
        System.out.println(hashMap);
    }
}
3:遍历Map
获取所有的key 遍历key 再通过key来获取value
package my;

import java.util.HashMap;
import java.util.Iterator;
import java.util.Set;

public interface MyHashMap {
    public static void main(String[] args) {
        HashMap<String, Object> hashMap = new HashMap<>();
        hashMap.put("1","a");
        hashMap.put("2","b");
        hashMap.put("3","c");
        hashMap.put("4","d");
        hashMap.put("5","e");
        Set<String> set = hashMap.keySet();
        Iterator<String> iterator = set.iterator();
        while (iterator.hasNext()) {
            System.out.println(hashMap.get(iterator.next()));
        }

    }
}

输出结果:

4:常用的方法
clear 清楚所有
containKey key是否存在
containValue Value是否存在
getorDefault 没有找到返回默值
putIfAbsent key存在不添加
5:map集合在什么情况下用?
储存的数据不变用数组
储存的数据变化大或者不确定用集合
List Set Map
List家族 储存有顺序用这个
ArrayList 适合遍历
LinkedList 适合插入和删除
Stack 象棋悔步
Set家族 无重复 自动去重
Hashset 性能高
Treeset 自动去重 还能排序
Map 家族 k-v
HashMap 性能高
TreeMap k有序 v无序 k自动排序
6:底层的实现
散列表


转载:https://blog.csdn.net/qq_43667272/article/details/102147395
查看评论
* 以上用户言论只代表其个人观点,不代表本网站的观点或立场