java:Map相关基础知识笔记

本文详细介绍了JavaMap集合的概述、基本操作(如put、remove等)、获取键值对的集合以及两种遍历方式。同时概述了Collections工具类,包括sort、reverse和shuffle等常用方法。
摘要由CSDN通过智能技术生成

一、Map集合概述和使用

1.Map集合概述

  • Interface Map<K,V> K:键的类型;V:值的类型
  • 将键映射到值的对象;不能包含重复的键;每个键可以映射到最多一个值

2.Map集合的基本功能

方法名说明
V put(K key,V value)添加元素
V remove(Object key)根据键删除键值对元素
void clear()移除所有键值对元素
boolean containsKey(Object key)判断集合是否包含指定的键
boolean containsValue(Object  value)判断集合是否包含指定的值
boolean isEmpty()判断集合是否为空
int size()集合的长度,也就是集合中键值对的个数

3.Map集合的获取功能

方法名说明
V get(Object key)根据键获取值
Set<K>keySet()获取所有键的集合
Collection<V>values()获取所有值的集合
Set<Map.Entry<K,V>>entrySet()获取所有键值对对象的集合

4.Map集合的遍历(方式1)

我们存储的元素是成对出现的,所以我们把Map看成是一个夫妻对的集合

遍历思路

  • 把所有的丈夫集合起来
  • 遍历丈夫的集合,获取每一个丈夫
  • 根据丈夫去找对应的妻子

转换为Map集合的操作:

  • 获取所有键的集合。用keySet()方法实现
  • 遍历键的集合,获取到每一个键。用增强for实现

5.Map集合的遍历(方式2)

我们储存的元素都是成对出现的,所以我们把Map看成是一个夫妻的集合遍历思路

  • 获取所有结婚证的集合
  • 遍历结婚证的集合,得到每一个结婚证
  • 根据结婚证获取丈夫和妻子

转换位Map集合中的操作

  • 获取键值对对象的集合Set<Map.Entry<K,V>>entrySet();获取所有键值对对象的集合
  • 遍历键值对对象的集合,得到每一个键值对对象用增强for实现,得到每一个Map.Entry
  • 根据键值对对象获取键和值,用getKey()得到键,用getValue()得到值。

测试代码

public class MapDemo {
    public static void main(String[] args) {
        //创建集合对象
        HashMap<String, String> map = new HashMap<>();

        //添加元素
        map.put("张无忌","赵敏");
        map.put("郭靖","黄蓉");
        map.put("杨过","小龙女");

        //获取所有键值对对象的集合
        Set<Map.Entry<String,String>> entrySet = map.entrySet();
        //遍历键值对对象的集合,得到每一个键值对对象
        for (Map.Entry<String,String>me:entrySet){
            //根据键值对对象获取键和值
            String key = me.getKey();
            String value = me.getValue();
            System.out.println(key+","+value);
        }

    }
}

二、Collections概述和使用

1.Collections概述和使用

  • 是针对集合操作的工具类

2.Collection类的常用方法

  • public static<T extends Compareble<?superT>>void sort(List<T>list);将指定的列表按照升序排序
  • public static void reverse(List<>list);反转指定列表中元素的顺序
  • public static void shuffle(List<?>list);使用默认的随机源随机排列指定列表
  • 17
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值