java:集合框架(Map集合概述和特点)

版权声明:本文为博主原创文章,未经博主允许不得转载 https://blog.csdn.net/qq_24644517/article/details/83061319

* A:Map接口概述
    * 查看API可以知道:
        * 将键映射到值的对象
        * 一个映射不能包含重复的键
        * 每个键最多只能映射到一个值
* B:Map接口和Collection接口的不同
    * Map是双列的,Collection是单列的
    * Map的键唯一,Collection的子体系Set是唯一的
    * Map集合的数据结构值针对键有效,跟值无关;Collection集合的数据结构是针对元素有效

* a:添加功能
        * V put(K key,V value):添加元素。
            * 如果键是第一次存储,就直接存储元素,返回null
            * 如果键不是第一次存在,就用值把以前的值替换掉,返回以前的值

import java.util.HashMap;
import java.util.Map;

public class Demo1_Map {

	public static void main(String[] args) {
		Map<String, Integer> map=new HashMap<>();
		Integer i1=map.put("张三", 23);
		Integer i2=map.put("李四", 24);
		Integer i3=map.put("王五", 25);
		Integer i4=map.put("赵六", 26);
		Integer i5=map.put("张三", 26);//把被覆盖的元素返回
		System.out.println(map);
		System.out.println(i1);
		System.out.println(i2);
		System.out.println(i3);
		System.out.println(i4);
		System.out.println(i5);
	}

}

运行结果:

{李四=24, 张三=26, 王五=25, 赵六=26}
null
null
null
null
23


    * b:删除功能
        * void clear():移除所有的键值对元素
        * V remove(Object key):根据键删除键值对元素,并把值返回

import java.util.HashMap;
import java.util.Map;

public class Demo1_Map {

	public static void main(String[] args) {
		Map<String, Integer> map=new HashMap<>();
		map.put("张三", 23);
		map.put("李四", 24);
		map.put("王五", 25);
		map.put("赵六", 26);
		
		Integer i1Value=map.remove("张三"); 
		System.out.println(i1Value);
		System.out.println(map);
	}

运行结果:

23
{李四=24, 王五=25, 赵六=26}


    * c:判断功能
        * boolean containsKey(Object key):判断集合是否包含指定的键
        * boolean containsValue(Object value):判断集合是否包含指定的值
        * boolean isEmpty():判断集合是否为空

import java.util.HashMap;
import java.util.Map;

public class Demo1_Map {

	public static void main(String[] args) {
//		demo1();
		Map<String, Integer> map=new HashMap<>();
		map.put("张三", 23);
		map.put("李四", 24);
		map.put("王五", 25);
		map.put("赵六", 26);
		System.out.println(map.containsKey("张三"));
		System.out.println(map.containsValue(100));
}
}

运行结果:

true
false


    * d:获取功能
        * Set<Map.Entry<K,V>> entrySet():
        * V get(Object key):根据键获取值
        * Set<K> keySet():获取集合中所有键的集合
        * Collection<V> values():获取集合中所有值的集合
    * e:长度功能
        * int size():返回集合中的键值对的个数

import java.util.Collection;
import java.util.HashMap;
import java.util.Map;

public class Demo1_Map {

	public static void main(String[] args) {
		Map<String, Integer> map=new HashMap<>();
		map.put("张三", 23);
		map.put("李四", 24);
		map.put("王五", 25);
		map.put("赵六", 26);
		 
		Collection<Integer> c= map.values(); 
		System.out.println(c);
		System.out.println(map.size());
	}
}

猜你喜欢

转载自blog.csdn.net/qq_24644517/article/details/83061319
今日推荐