码迷,mamicode.com
首页 > 编程语言 > 详细

Java连载86-List集合详解

时间:2020-02-21 10:15:37      阅读:91      评论:0      收藏:0      [点我收藏+]

标签:个人   array   net   git   默认   rgs   算法   nbsp   数组   

一、List集合

1.List集合存储元素的特点:

(1)有序(List集合中存储有下标)?:存进去是这样的顺序,取出来还是按照这个顺序取出?。

(2)可重复

2.深入ListJ集合

ArrayList集合底层是数组,数组?是有下标的;所以ArrayList集合有很多自己的特性?;ArrayList集合底层默认初始化容量是10,扩大之后的容量是原容量的1.5倍?;Vector集合底层默认初始化容量为10,扩大之后的容量是原容量的两倍

3.如何优化ArrayList和Vector

尽量减少扩容操作,因为扩容需要数组拷贝,数组拷贝是很耗内存的,一般推荐在创建集合的时候指定初始化容量

 

package com.bjpowernode.java_learning;

import java.util.*;

?

public class D86_1_ListCollectionAnalysis {

  public static void main(String[] args) {

    //创建一个List集合

    //Collection c = new ArrayList();//这样初始化一个列表编译没问题,但是我们就不用能用List特有的方法了

    List l = new ArrayList();

    //List l = new LinkedList();//这两种初始化方式哪种都可以,这就涉及到底层的数据结构问题了,可参见《算法》一书

    //向列表的尾部添加元素

    l.add(100);

    l.add(99);

    l.add(23);

    l.add(250);

    l.add("hiosaf");

    //add(int index,E e)向指定位置插入e

    l.add(5,"jioasf");

    System.out.println(l.get(1));

    System.out.println("====================");

    //遍历

    Iterator it = l.iterator();

    while(it.hasNext()) {

      System.out.println(it.next());

    }

    //这也看出来,既可以使用迭代器来遍历,也可以使用get方法进行遍历

   

  }

}

?

技术图片

二、源码:

D86_1_ListCollectionAnalysis.java?

https://github.com/ruigege66/Java/blob/master/D86_1_ListCollectionAnalysis.java

2.CSDN:https://blog.csdn.net/weixin_44630050

3.博客园:https://www.cnblogs.com/ruigege0000/

4.欢迎关注微信公众号:傅里叶变换,个人公众号,仅用于学习交流,后台回复”礼包“,获取大数据学习资料

 技术图片

Java连载86-List集合详解

标签:个人   array   net   git   默认   rgs   算法   nbsp   数组   

原文地址:https://www.cnblogs.com/ruigege0000/p/12339907.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!