第八章-集合

集合

本章内容

  1. 集合框架概述
  2. List接口
  3. Map接口
  4. 集合遍历

 

1. 集合框架概述

      

    1. Java集合框架提供了一套性能优良、使用方便的接口和类,它们位于java.util包中
    2. Collection 接口是集合的超级父接口,用于存储对象
    3. Collection 接口有两个子接口:List和Set

               

 

List 接口存储一组有序(插入顺序)、但重复的对象

 

set 接口存储一组无序、不重复的对象

          

 

2. List接口

  1. List接口有两个实现类:ArrayList和LinkedList

           

 

  1. ArrayList实现了长度可变的数组,在内存中分配连续的空间。遍历元素和随机访问元素的效率比较高

           

uploading.4e448015.gif转存失败重新上传取消

  1. LinkedList采用链表存储方式。插入、删除元素时效率比较高,但是查询的效率较慢

uploading.4e448015.gif转存失败重新上传取消

  1. List接口的方法:
      1. add(Object o):添加元素或对象
      2. add(int index,Object o):在指定的位置添加元素或对象
      3. size():返回列表中的元素或对象的个数
      4. get(int index):返回指定索引位置处的元素或对象。取出的元素是Object类型,使用前需要进行强制类型转换
      5. contains(Object o):判断列表中是否存在指定的元素或对象
      6. remove(Object o):从列表中删除元素或对象
      7. remove(int index):从列表中删除指定位置的元素,起始索引位置从0开始
  2. ArrayList实现了List接口。所以具有List接口的所有方法。
  3. 当插入、删除操作频繁时,可使用LinkedList来提高效率
      1. LinkedList提供了对头部和尾部元素进行添加和删除操作的方法
      2. addFirst(Object o):在列表的首部添加元素
      3. addLast(Object o):在列表的末尾添加元素
      4. getFirst():返回列表中的第一个元素
      5. getLast():返回列表中的最后一个元素
      6. removeFirst():删除并返回列表中的第一个元素
      7. removeLast():删除并返回列表中的最后一个元素
  4. 演示:创建一个集合,可以保存任何类型的数据

 

 

3. Map接口 Key - Value

  1. Map接口专门处理键值映射数据的存储,可以根据键实现键值对的操作
  2. 最常用的实现类是HashMap
  3. Map接口的常用方法:
      • put(Object key, Object val):以“键-值对”的方式进行存储
      • get(Object key):根据键返回相关联的值,如果不存在指定的键,返回null
      • remove(Object key):删除由指定的键映射的“键-值对”
      • size():返回元素个数
      • Set keySet():返回键的集合
      • Collection values():返回值的集合
      • containsKey(Object key):如果存在由指定的键映射的“键-值对”,返回true

 

4. 集合遍历

  1. 方法1:通过迭代器Iterator实现遍历

获取Iterator :Collection 接口的iterate()方法

Iterator的方法

boolean hasNext(): 判断是否存在另一个可访问的元素

Object next(): 返回要访问的下一个元素,并移动下标

示例:使用迭代器循环遍历list集合

   

uploading.4e448015.gif转存失败重新上传取消

  1. 方法2:增强型for循环 ——foreach

for(元素类型t  元素变量x : 数组或集合对象){

         引用了x的java语句

          }

uploading.4e448015.gif转存失败重新上传取消

 

 

  1. Map遍历推荐

          

uploading.4e448015.gif转存失败重新上传取消

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值