能给讲下JAVA中List用法吗?我看书看的不是很明白.谢谢了
解决方案 »
- JAVASCRIPT在图片中取一个坐标点,鼠标点住左键拉伸一定区域,我想要得到这个点的坐标x,y值,还有拉伸一定区域的长,宽值。哪位js高手帮我看看怎么弄
- 请教一个java的语法问题,不知道是不是java的bug?????
- 关于java网络编程问题,用java写了个服务端,用delphi写了个客户端.....?
- 急!!高手们,请问Vector、ArrayList和List的异同!
- 打印~~~~如何打印ie页面中的图像和文本的混合体(ie本身的打印功能不可以)
- 请你们告诉我J2EE和J2ME各侧重于哪方面,适合开发什么?
- 各位进来看看关于将程序打包成jar文件的问题!!!!!!!!!!!!!
- 关于java的GridBagConstraints布局问题??
- java
- 关于inputstream的问题来者有分!!
- JRE无法使用
- 如何把系统时间转换成unix时间
另外List由于是接口,是不能这样写的List list = new List();
还有就是多看看API里面又介绍ArrayList的方法介绍,多坐坐练习,这样就会提高的,我也是初学者,我们一起努力!
LZ加油 !!!
List是有序的Collection,使用此接口能够精确的控制每个元素插入的位置。用户能够使用索引(元素在List中的位置,类似于数组下标)来访问List中的元素,这类似于Java的数组。
和下面要提到的Set不同,List允许有相同的元素。
除了具有Collection接口必备的iterator()方法外,List还提供一个listIterator()方法,返回一个ListIterator接口,和标准的Iterator接口相比,ListIterator多了一些add()之类的方法,允许添加,删除,设定元素,还能向前或向后遍历。
实现List接口的常用类有LinkedList,ArrayList,Vector和Stack。LinkedList类
LinkedList实现了List接口,允许null元素。此外LinkedList提供额外的get,remove,insert方法在LinkedList的首部或尾部。这些操作使LinkedList可被用作堆栈(stack),队列(queue)或双向队列(deque)。
注意LinkedList没有同步方法。如果多个线程同时访问一个List,则必须自己实现访问同步。一种解决方法是在创建List时构造一个同步的List:
List list = Collections.synchronizedList(new LinkedList(...));ArrayList类
ArrayList实现了可变大小的数组。它允许所有元素,包括null。ArrayList没有同步。
size,isEmpty,get,set方法运行时间为常数。但是add方法开销为分摊的常数,添加n个元素需要O(n)的时间。其他的方法运行时间为线性。
每个ArrayList实例都有一个容量(Capacity),即用于存储元素的数组的大小。这个容量可随着不断添加新元素而自动增加,但是增长算法并没有定义。当需要插入大量元素时,在插入前可以调用ensureCapacity方法来增加ArrayList的容量以提高插入效率。
和LinkedList一样,ArrayList也是非同步的(unsynchronized)。
恭喜升级!