集合框架

在这里插入图片描述
集合框架:
为什么使用集合框架:
如果并不知道程序运行时会需要多少对象,或者需要
更复杂方式存储对象——可以使用Java集合框架

java集合框架中的接口:Collection、List 、Set、Map
Collection 接口存储一组不唯一,无序的对象;
List 接口存储一组不唯一,有序(插入顺序)的对象;
Set 接口存储一组唯一,无序的对象;
Map接口存储一组键值对象,提供key到value;

java 集合框架中的类:ArrayList 、LinkedList、 HashSet 、TreeSet、 HashMap 、TreeMap
List接口
ArrayList实现了长度可变的数组,在内存中分配连续的空间。遍历元素和随机访问元素的效率比较高
LinkedList采用链表存储方式。插入、删除元素时效率比较高
ArrayList数组:
创建:List 名字=new ArrayList();
删除:名字.remove(下标);
名字.remove(对象名);
查找:名字.contains(对象名)

List 接口常用方法:
1、boolean add(Object o):在列表的末尾顺序添加元素,起始索引位置从0开始
2、void add(int index,Object o):在指定的索引位置添加元素。索引位置必须介于0和列表中元素个数之间
3、int size():返回列表中的元素个数
4、Object get(int index):返回指定索引位置处的元素。取出的元素是Object类型,使用前需要进行强制类型转换
5、boolean contains(Object o):判断列表中是否存在指定元素
6、boolean remove(Object o):从列表中删除元素
7、Object remove(int index):从列表中删除指定位置元素,起始索引位置从0开始

LinkedList集合:
创建:LinkedList 名字=new LinkedList();
添加首尾:dogs.addFirst(d1);
dogs.addLast(d2);
删除首尾:dogs.removeFirst();
dogs.removeLast();
获取首尾:Dog dogLast= (Dog)dogs.getLast();
Dog dogFirst= (Dog)dogs.getFirst();

LinkedList的特殊方法:
1、void addFirst(Object o) 在列表的首部添加元素
2、void addLast(Object o) 在列表的末尾添加元素
3、Object getFirst() 返回列表中的第一个元素
4、Object getLast() 返回列表中的最后一个元素
5、Object removeFirst() 删除并返回列表中的第一个元素
6、Object removeLast() 删除并返回列表中的最后一个元素
Map接口:
HashMap存储元素:
Map map=new HashMap();
map.put(1,“王旭”);
map.put(2,“李尧”);
map.put(3,“李思”);
map.put(4,“王五”);

    map.remove(3);//根据键值删除
    if (map.containsKey(3)){//根据键值查看
        System.out.println("zai");
    }else {
        System.out.println("buzai");
    }

输出(迭代器Iterator):
Set set=map.keySet();
Iterator it=set.iterator();
while (it.hasNext()){
int key=(int)it.next();
String value=(String)map.get(key);
System.out.println(key+"\t"+value);
}

Map接口常用方法:
1、Object put(Object key, Object val) 以“键-值对”的方式进行存储
2、Object get (Object key) 根据键返回相关联的值,如果不存在指定的键,返回null
3、Object remove (Object key) 删除由指定的键映射的“键-值对”
4、int size() 返回元素个数
5、Set keySet () 返回键的集合
6、Collection values () 返回值的集合
7、boolean containsKey (Object key) 如果存在由指定的键映射的“键-值对”,返回true
泛型集合
用泛型改写了集合框架中的所有接口和类
List dogs = new ArrayList();
Dog dog = dogs.get(2);//无需强转

泛型改写迭代器Iterator
Set keys=dogMap.keySet(); //取出所有key的集合
Iterator it=keys.iterator(); //获取Iterator对象
while(it.hasNext()){
String key=it.next(); //取出key
Dog dog=dogMap.get(key); //根据key取出对应的值

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值