• Java学习之集合(List接口)


    List特有的常见方法:有一个共性特点:都可以操作角标
    1、添加
       void add(int index, E element);
      void addAll(int index, collection<?> c);
    2、删除
      Object remove(int index);
    3、修改
      Object set(int index, E element);
    4、获取
      Object get(int index);
      int indexOf(Object o);
      int lastIndexOf(Object 0);
      List subList(int fromIndex,int toIndex);//获取子列表
     1 import java.util.ArrayList;
     2 import java.util.Iterator;
     3 import java.util.List;
     4 import java.util.ListIterator;
     5 
     6 public class ListDemo {
     7 
     8     public static void main(String[] args) {
     9     List list = new ArrayList();
    10     show(list);
    11 
    12     show2(list);
    13 
    14     modify(list);
    15     }
    16 
    17     public static void show(List list) {
    18     list.add("abc1");
    19     list.add("abc2");
    20     list.add("abc3");
    21     list.add("abc4");
    22     list.add("abc5");
    23     System.out.println("list add:"+list);
    24     // 插入元素
    25     list.add(1, "abc10");
    26     System.out.println("list index add:"+list);
    27     // 删除元素
    28     list.remove(2);
    29     System.out.println("list remove(index):"+list);
    30     // 修改元素
    31     list.set(2, "abc8");
    32     System.out.println("list set(index,value):"+list);
    33     // 获取元素
    34     //System.out.println(list.get(5));//IndexOutOfBoundsException
    35     }
    36 
    37     public static void show2(List list) {
    38     // Iterator it = list.iterator();
    39     System.out.println("=========Iterator=========");
    40     for (Iterator it = list.iterator(); it.hasNext();) {
    41         System.out.println("next:"+it.next());
    42     }
    43     // list 特有的取出元素的方式之一
    44     System.out.println("=========list.size()=========");
    45     for (int x = 0; x < list.size(); x++) {
    46         System.out.println("list get(index):"+list.get(x));
    47     }
    48     }
    49 
    50     public static void modify(List list) {
    51     /*
    52      * for (Iterator it = list.iterator(); it.hasNext();) 
    53      * { 
    54      * Object obj = it.next();// java.util.concurrentmodificationException //
    55      * 异常原因:集合和迭代器同时操作集合,导致异常 
    56      * if (obj.equals("abc2")) 
    57      * { 
    58      *     //操作集合
    59      *     list.add("abc9"); 
    60      * } else
    61      *     System.out.println(obj); }
    62      */
    63     System.out.println(list);
    64 
    65     // 异常解决:可以使用ListIterator来完成在迭代中对元素进行操作
    66     // 注意:只有list集合具备ListIterator接口
    67     /*
    68      * ListIterator接口方法 hasNext(); next();
    69      * 
    70      * hasPrevious(); previous()
    71      */
    72 
    73     System.out.println("=========ListIterator 可修改集合=========");
    74     for (ListIterator it = list.listIterator(); it.hasNext();) {
    75         Object obj = it.next();
    76         if (obj.equals("abc4")) {
    77         it.add("abc9");
    78         } else
    79         System.out.println(obj);
    80     }
    81     System.out.println("list 特有的ListIterator"+list);
    82     }

    結果:

  • 相关阅读:
    参数调优
    类路径
    《高性能MySQL》
    Hibernate操作和保存方式
    MySQL中文乱码
    数据库锁
    事务隔离级别
    分布式事务
    线程池:ThreadPoolExecutor
    系统整体测试工具
  • 原文地址:https://www.cnblogs.com/WarBlog/p/12097302.html
Copyright © 2020-2023  润新知