Java基础进阶_day08_(Map集合,可变参数)

Map集合可变参数
摘要由CSDN通过智能技术生成

Java基础进阶_day08_(Map集合,可变参数)

1. Map集合

Map集合:将键映射到值的对象.Map集合是双列集合的顶层接口.

# Map集合特点:
* A:一个映射不能包含重复的键(相当于是Collection集合的Set集合);
* B:每个键最多只能映射到一个值;
* C:值可以重复(相当于是Collection集合的List集合).

Map集合与Collection集合的区别:

# Map集合存储的元素是成对出现的,其中键是唯一的,值是可以重复的;
# Collection集合存储的元素是单独出现的,其子接口List集合存储的是元素是可重复的,子接口Set集合存储的元素是唯一的.

集合中的数据结构:

# Map集合的底层数据结构是针对键有效的,对值无效;
# Collection集合的底层数据结构是针对存储的元素有效.

Map集合功能概述:

添加功能:
V put(K key,V value):将指定的键映射到值,返回被替换的值;
获取功能:
Set<Map.Entry<K,V>> entrySet():获取集合键值对的集合;
V get(Object key):获取指定键对应的值,没有则返回null;
Set<K> keySet():返回该集合的键集合;
Collection<V> values():返回该集合的值的集合;
删除功能:
void clear():删除集合中所有的键值对;
V remove(Object key):删除指定键对应的值,并将删除的值返回(key不返回),没有返回null;
判断功能:
boolean containsKey(Object key):判断集合中是否包含指定键;
boolean containsValue(Object value):判断集合中是否包含指定的值;
boolean isEmpty():判断集合是否为空;
长度功能:
int size():返回集合中键值对的对数.

Map集合的遍历方式:

# 方式1:通过keySet()方法获取Map的键的Set集合,通过遍历key的集合(get()方法)获取key对应的value值.
# 方式2:先获取Map集合的键值对对象的集合,通过遍历获取的集合获取每一个键值对对象,获取键值对对象的键和值.

案例:

public class MyMapDemo {
   
    public static void main(String[] args) {
        //创建集合对象
        Map<Integer, String> m = new HashMap<Integer, String>();
        // V put(K key,V value)
        System.out.println(m.put(1, "郭靖"));
        m.put(2, "黄蓉");
        System.out.println(m);
        // V get(Object key)
        System.out.println(m.get(1));
        System.out.println(m.get(2));
        // Set<K> keySet():
        Set<Integer> keySet = m.keySet();
        for (Integer integer : keySet) {
            System.out.println(integer);
        }
        // Collection<V> values()
        Collection<String> values = m.values();
        for (String string : values) {
            System.out.println(string);
        }
        // void clear()
        // m.clear();
        // System.out.println(m);
        // V remove(Object key)
        System.out.println(m.remove(1));
        System.out.println(m.remove(3));
        // boolean containsKey(Object key)
        System.out.println(m);
        System.out.println(m.containsKey(1));
        // boolean containsValue(Object value)
        System.out.println(m.containsValue("郭靖"));
        // boolean isEmpty()
        System.out.println(m.isEmpty());
        // int size()
        System.out.println(m.size());
        // 遍历集合,方式1
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值