java面向对象集合框架

一、数组介绍

Collection接口存储一组不唯一,无序的对象
List接口存储一组不唯一,有序的对象
ArrayList实现了长度可变数组,在内存中分配连续的空间,遍历元素和随机访问元素的效率比较高
set接口存储一组唯一,无序的对象
Map接口存储一组唯一,无序对象

在这里插入图片描述

​ 不唯一有序 唯一 有序

二、数组特点

1.List  接口的实现类
   ArrayList 不唯一  有序  优点遍历效率高
   LinkedList 不唯一 有序  插入和删除的时候效率高 
2. ArrayList的应用
//1-声明集合
 			List   lis=new ArrayList();
lis.add(Object对象 dog1);
lis.add(int 索引号,dog5)
lis.sizi();  长度
//5删除方式
lis.remove(0);//删除索引号为0对象
lis.remove(dog2);//按照指定的对象名删除
遍历方式foreach遍历方式
System.out.println("foreach遍历方式");
for (Object obj:lis){
    ((Dog)obj).print();
}
for循环遍历
for (int i = 0; i <lis.size() ; i++) {
       Object obj=lis.get(i);//Object-->Dog 拆箱
        Dog dogs=(Dog)obj;
        dogs.print();
}
是否包含对象存	
//6contains判断对象是否存在
if(lis.contains(dog2)){
    System.out.println("楠楠对象存在");
}else {
    System.out.println("楠楠对象不存在");
}

三、集合的好处

集合框架的好处?
1.当数据非常多而且数量不确定的时候这个时候考虑集合框架
java集合中包含那些接口?
 Collection 和Map接口
Collection接口包括list set 接口
list接口又包括2个类ArrayList和LinKedList类
ArrayList和和LinkedList有何区别
都是只能用索引号遍历的
ArrayList 添加了删除遍历这样的一个方法
LinkeddList基础上是加入了快速的第一行或最后一行删除的方法

四、vactor和ArrayList的异同

实现原理,功能相同,可以互用
主要区别
vetor线程安全,ArrList重速度轻安全,线程非安全 长度需增长时,Vector默认增长一倍,ArrayList增长50%
Hashtable和HashMap的异同
实现原理,功能相同,可以互用
主要区别
Hashtable继承Dictionary类,HashMap实现Map接口
Hashtable线程安全,HashMap线程非安全
Hashtable不允许null值,HashMap允许空值

泛型集合
Collection、List、Set、Map接口的联系和区别
HashMap的应用ltertord的应用
有迭代器来遍历集合当中的数据
//方式1:迭代器方式
 Set keys= dogMap.keySet(); //把所有的key值给Set 变量 
 //获得Iteraotr对象
  Iterator it = keys.iterator(); // 用迭代器传给 it 
    while (it.hasNext()){      //迭代器循环   
        String key=(String)it.next();//获得键名 要强转
        System.out.println(key); //获得key的值
        Dog dog=(Dog)dogMap.get(key);//通过key的值给get 去获得他的对象 
        dog.print(); //dog对象的输出
}
    //方式2 foreach
Set keys1= dogMap.keySet(); //还是一样获得set值
for (Object obj:keys1) {    //直接传值给obj类型遍历
    Dog dog=(Dog)dogMap.get(obj); //用get传入他的key值获取他的对象
    dog.print();   //输出
}

泛型集合的应用不同之处及各自的应用场合

相对于list集合来说限制了他范围不用类型转换

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小熊跃龙

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值