Java集合,list,set,map,iterator

数组与集合

  1. 集合与数组存储数据概述
    集合,数组都是多个数据经行存储操作的结构,简称容器
    说明:此时的存储,主要指的是内存层面的存储,不涉及到持久化的存储(.txt,.jpg,.avi,数据库中)
  2. 数组存储的特点:
    一旦初始化后,其长度也就确定了
    数组一旦定义好,其元素的类型也就确定了。
  3. 数组存储的弊端
    一旦初始化以后,其长度就不可以修改。
    数组中提供的方法非常的有限
    获取数组中实际元素的个数需求,数组中没有现成的属性或者方法可用
  4. 结合存储的优点:
    解决数组存储数据方面的弊端

集合继承树

|----Collection接口:单列集合,用来存储一个一个的对象

  •        |----List接口:存储序的、可重复的数据。  -->“动态”数组
           |----ArrayList、LinkedList、Vector
    
    |----Set接口:存储无序的、不可重复的数据
  •          |----HashSet、LinkedHashSet、TreeSet
    

在这里插入图片描述

map系列

在这里插入图片描述


注意点:
1 使用Collection集合存储对象,要求对象所属的类满足:
向Collection接口的实现类的对象中添加数据obj时,要求obj所在类要重写equals().


iterator接口

Iterator和增强for(点击跳转)


Collection子接口之一:list接口

list接口以及其子类(点击跳转)


Collection子接口之二:Set接口

Set底层都是用的Map就不写了

Map接口

Java Map接口,HashMap,LinkedhashMap,TreeMap源码解析,HashTable

Collections工具类的使用

  1. 作用:操作Collection和Map的工具类

  2. 常用方法

  • reverse(List):反转 List 中元素的顺序
  • shuffle(List):对 List 集合元素进行随机排序
  • sort(List):根据元素的自然顺序对指定 List 集合元素升序排序
  • sort(List,Comparator):根据指定的 Comparator 产生的顺序对 List 集合元素进行排序
  • swap(List,int, int):将指定 list 集合中的 i 处元素和 j 处元素进行交换
  • Object max(Collection):根据元素的自然顺序,返回给定集合中的最大元素
  • Object max(Collection,Comparator):根据 Comparator 指定的顺序,返回给定集合中的最大元素
  • Object min(Collection)
  • Object min(Collection,Comparator)
  • int frequency(Collection,Object):返回指定集合中指定元素的出现次数
  • void copy(List dest,List src):将src中的内容复制到dest中
  • boolean replaceAll(List list,Object oldVal,Object newVal):使用新值替换 List 对象的所旧值

说明:ArrayList和HashMap都是线程不安全的,如果程序要求线程安全,我们可以将ArrayList、HashMap转换为线程的。
使用synchronizedList(List list) 和 synchronizedMap(Map map)

3.面试题:
面试题:Collection 和 Collections的区别?

猜你喜欢

转载自blog.csdn.net/filling_l/article/details/106182447
今日推荐