泛型的定义和List集合的基本定义与使用方法

一.泛型初识
    泛型限定 
        限定集合中存储的数据类型是什么
        Object[] arr = new Object[10];
        Collection coll = new ArrayList();
    注意:
        1.泛型必须是引用数据类型 
            当存储基本数据类型 写包装类 
            当存储引用数据类型 直接写 
        2.=左侧和右侧的泛型 需要保持一致
            Collection<Student> coll = new ArrayList<Student>();
            Collection<Student> coll = new ArrayList<>();
二.List集合定义及常用方法
    定义:是用于有序存储可重复元素的集合
        有序 可重复 有下标 下标从0开始
        java.util.List;
            在Collection方法基础上 + 带下标操作的方法
            增
                add(int index,Object obj); 在指定下标位置添加元素
            删
                remove(int index) 删除指定下标位置元素
            改
                set(int index,Object obj) 修改指定下标位置元素
            查
                get(int index) 获取指定下标位置的元素
                listIterator() 列表迭代器
                    多了从后向前遍历的方法 
                        hasNext 
                        next 
                        hasPrevious() 
                        previous() 
            其他
                int indexOf(Object obj) 获取元素在集合中第一次出现的下标
                int lastIndexOf(Object obj) 获取元素在集合中最后一次出现的下标
                subList(int fromIndex, int toIndex) 截取 包含头 不包含尾
        注意事项:
            循环遍历集合 查找符合条件的 并删除
            必须使用迭代器的remove 
            在使用迭代器遍历集合的同时 不能在迭代器中对集合长度进行修改
三.List集合实现类的特点
    ArrayList 
        定义:基于动态数组实现的List集合。
                创建长度为10的数组 如果不够用 自动创建新数组长度为1/2倍的增长
                15 将原数组中的数据拷贝到新数组中
    Vector
        定义:是基于数组实现的,线程同步的遗留集合类
        
        ArrayList 和 Vector区别 
            新老版本不同 
                老版本 Vector 线程同步 安全 效率低
                新版本 ArrayList 线程不安全 效率高
        Stack 栈
            是继承Vector集合的,具有后进先出特点的遗留集合类
            后进先出 弹夹
    LinkedList 
        定义:是基于双向链表的,实现了List接口和Queue接口的集合
            
            ArrayList和 LinkedList 区别:
                ArrayList 查找和随机访问快 增删慢 
                LinkedList 增删快 查找慢
            List 方法基础上 多了 首尾操作的方法 
                addFirst 
                addLast 
                removeFirst
                removeLast
                getFirst 
                getLast

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值