java高级day01

集合

集合:存储任意数据类型、长度不固定

集合体系框架

区别:

ArrayList:底层是一个数组,擅长数据的查找(访问)

LinkedList:底层链表,擅长数据的修改(包括数据添加和删除)

特点:存储的数据时有序的(有序是指存储顺序),存放重复的数据,可以存放NULL值

List:   add()   set()   remove  get()  contains():判断指定值是否存在,存在返回true,不存在返回false

Set集合

特点:存储无序(不再支持索引),不能存储重复数据,是否可以NULL

Set集合:HashSet,通常用来输出数据的方案:Iterator实现数据的删除和遍历

SET中不能出现重复数据:存放到Set集合的数据,不能满足元素1==元素2或元素1.equals(元素2),set集合将只保存元素1,而不会存储元素2

Map集合

Map<K,V>:存储数据是以键值对的形式存储

HashMap: 键不能重复

案例

使用HashMap集合类

需求说明:按照以下实现的步骤,使用HashMap建立国家英文简称和中文全名间的键值映射,并通过key对value进行操作,输出效果如下图所示:

(1)使用HashMap存储多组国家英文简称和中文全称的键值对;

(2)显示"CN"对应国家的中文全称;

(3)显示集合中元素个数;

(4)两次判断Map中是否存在"FR"键;

(5)分别显示键集、值集和键值对集;

(6)清空 HashMap并判断;

public class MapDemo {

    public static void main(String[] args) {

        Map map=new HashMap<>();

        //添加数据

        map.put("CN", "中华人民共和国");

        map.put("US", "美利坚合众国");

        map.put("UK", "大不列颠及北爱尔兰联合王国");

        map.put("JP", "日本");

        //取出CN对应的国家名称

        Object value = map.get("CN");

        System.out.println(value);

        //判断US是否存在

        System.out.println(map.containsKey("USA"));

        //集合的元素共个数

        System.out.println(map.size());

        //打印所有的key

        //方案一:

        Set keys = map.keySet();//获取map中所有的key,存储在set集合中

        for (Object object : keys) {

            System.out.print(object+",");

        }

        System.out.println();

        //打印所有的value

        //方案一:

        Collection values = map.values();

        for (Object object : values) {

            System.out.print(object+",");

        }

        System.out.println();

        //打印键值对

        Set entrySet = map.entrySet();

        for (Object object : entrySet) {

            System.out.println(object);

        }

    }

}

猜你喜欢

转载自blog.csdn.net/Shi_Yuan_Csdn/article/details/81544762