列表(容器学习一)

容器接口Collection
主要有set和list这两种,这篇博客主要对List的常用方法进行总结。
List有ArrayList、LinkedList;
ArraysList:有一维数组实现,具有随机存取的特性,插入、删除元素时需要移动其他元素,当元素很多时删除的操作也变慢

LinkedList:采用链表结构保存对象,使用双循环双链实现List,这种结构向链表任意位置插入、删除元素时不需要移动其他元素,链表的大小可以动态增大减小但不具备随机存取的特性
注:这些概念我也不太懂,,,
下面是两种列表常用的一些方法的使用:

List a = new ArrayList();//创建初始容量为10的列表
  List c = new ArrayList();
  c.add("END");
  a.add("I");//向链表中添加元素
  a.add("P");
  System.out.println(a.contains("I"));//判断列表中是否有元素"I"
  System.out.println(a.isEmpty());//判断容器是否为空
  a.toArray();//将a转换为数组
  System.out.println(a.remove("O"));//删除该元素,成功删除返回true,没有该元素返回fa'l'se
  //a.clear();//删除容器中的所有元素
  //equals比较此collection与指定对象是否相等
  System.out.println(a.get(1));//返回指定位置的元素
  a.set(1,"D");//将1处的元素换为"D"
  System.out.println(a.indexOf("I"));//不存在返回-1
  a.remove(0);//删除指定位置的元素
  a.add(0,"o");//在指定位置添加该元素
  System.out.println(a.get(0));
  a.addAll(c);//将容器c加在a的末尾
  System.out.println(a.get(2));
  a.addAll(1,c);//将c放在指定的位置
  //a.trimToSize();//将容器缩小到当前大小,只在ArrayList上用
  List b = new LinkedList();//创建空列表
  b.add(a);//
  System.out.println(b.get(0));
  b.addAll(a);
  /*只在LinkedList中使用
   * addFirst()//在列表首部加上该元素
   * addLast()
   * getFirst()
   * getLast()
   * removeFirst()
   * removeLast()
   */

你可能感兴趣的:(Java学习)