集合框架(Collection)子接口——List List实现类

子接口:List与Set,Queue

List:列表 它的实现 有序(存储时与添加顺序相关)
可重复(存储的元素可以是同一个,也可以是不同个)重复与否跟equals方法有关
有对应索引(下标)


List<String> list = new ArrayList<String>();//创建list数组

list.add("java");


/*创建一个集合存储 1象限 x=y的五个整数点,将点(10,2)插入到集合的第三个位置上*/
    List<Point> c = new ArrayList<Point>();
    c.add(new Point(1,1));

==============================================================

void       add(int index,E element)将元素插入index处,剩下元素后移
        list.add(2,"python");

E      get(int index)返回下标元素

int        indexOf(Object obj)返回元素第一次出现的位置

E          set(int index,e)  替换
        /*使用(-1,-1)替换第三个元素*/
        Point oldPoint = c.set(2,new Point(-1,-1));

boolean    remove(int index) 移除
        /*移除集合c中的(2,2)*/
        c.remove(new Point(2,2));

        /*移除集合c中第0个元素*/
        c.remove(0);
        System.out.println(c);

List<E> subList(int formIndex,int endIndex):截取集合一部分,包前不包后
    PS:在堆中不会产生新对象,变量引用父集的一部分
        /*截取元素[4,5,6,7,8]*/
        List<Integer> sub = nums.subList(3,8);//sub
        System.out.println(sub);

int       lastIndexOf(Object o)查看o最后一次出现的位置
        /*查看最后一个10位置*/
        System.out.println(nums.lastIndexOf(10));

=======================================================================

List实现类(3个):

(1)ArrayList(数据结构)
    底层基于动态(扩容所容都为新对象)数组,有存放顺序,
    执行get()、set()、效率高
    执行增删操作,效率低(需要扩容所容,窜下标,移动元素)(数据多明显),

(2)LinkedList(数据结构)
    底层基于双链表,每个存储单元都涉及其他两个引用
    执行get()、set()、效率低(需要移动指针)
    执行增删操作,效率高(数据多明显)

(3)Vector:集合类型(比较古老),线程安全,效率低,安全,但不建议使用
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值