Java:List的remove解析

来源:互联网 发布:水果编曲软件多少钱 编辑:程序博客网 时间:2024/05/25 05:36
 

 

import java.util.*; public class CollectionTest { public static void main(String[] args) { TreeSet set = new TreeSet(); ArrayList list = new ArrayList(); Vector vector = new Vector(); for (int i = 0; i < 10; i++) { set.add(i); list.add(i); vector.add(i); } System.out.println("初始化后set里的值为:" + set.toString()); System.out.println("初始化后list里的值为:" + list.toString()); System.out.println("初始化后vector里的值为:" + vector.toString()); for (int i = 0; i < 5; i++) { set.remove(i); list.remove(i); vector.remove(i); } System.out.println("此时set的值为" + set.toString()); System.out.println("此时后list的值为" + list.toString()); System.out.println("此时后vector的值为" + vector.toString()); } } 


 

程序运行的结果:
初始化后 set里的值为:[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
初始化后list里的值为:[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
初始化后vector里的值为:[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
处理后set的值为[5, 6, 7, 8, 9]
处理后list 的值为[1, 3, 5, 7, 9]
处理后vector的值为[1, 3, 5, 7, 9]

看出来了吗,最后list和和vector得到结果不是想象的[[5, 6, 7, 8, 9]],而是[1, 3, 5, 7, 9]。

注解:
List 里两个方法:
public E remove(int index)。//每次删除一个元素,后面的元素自动全部向前移动;
public boolean remove(Object o)//这个删除对象

 

原创粉丝点击