List集合类方法的使用

Java代码 复制代码  收藏代码
  1.   
  2. import java.util.ArrayList;   
  3. import java.util.Iterator;   
  4. import java.util.LinkedList;   
  5. //import java.awt.List;   
  6. import java.util.List;     //当出现下面的错误时,是因为少了这句,多了上面注释的一句,请看仔细   
  7.     //The type List is not generic; it cannot be parameterized with arguments <String>   
  8.   
  9.   
  10. public class TestList {   
  11.        
  12.   
  13.   public static void  main(String args[]){   
  14.          
  15.          
  16.       List<String> l = new ArrayList<String>();// 利用ArrayList类实例化List集合   
  17.       List<String> l2 = new LinkedList<String>();// 利用LinkedList类实例化List集合   
  18.   
  19.       //add(int index, Object obj)方法和set(int index, Object obj)方法的区别   
  20.       String a = "A", b = "B", c = "C", d = "D", e = "E";   
  21.       List<String> list = new LinkedList<String>();       //LinkedList  链式 相当于下表从0开始的   
  22.       list.add(a);                                   //add()方法   
  23.       list.add(e);   
  24.       list.add(d);   
  25.       list.set(1, b);      // 将索引位置为1的对象e修改为对象b   
  26.       list.add(2, c);      // 将对象c添加到索引位置为2的位置   
  27.       Iterator<String> it = list.iterator();    //遍历时的方式*****方法1   
  28.       while (it.hasNext()) {   
  29.       System.out.println(it.next());   
  30.       }   
  31.          
  32.       for(int i = 0; i < list.size(); i++) {  //遍历时的方式*****方法2   
  33.           System.out.println(list.get(i));    // 利用get(int index)方法获得指定索引位置的对象   
  34.          }   
  35.   
  36.          
  37.       //indexOf(Object obj)方法和lastIndexOf(Object obj)方法的区别   
  38.       System.out.println("开始:");   
  39.       String aa = "A", bb = "B", cc = "C", dd = "D", repeat = "Repeat";   
  40.       List<String> list2 = new ArrayList<String>();   
  41.       list2.add(aa); // 索引位置为 0   
  42.       list2.add(repeat); // 索引位置为 1   
  43.       list2.add(bb); // 索引位置为 2   
  44.       list2.add(repeat); // 索引位置为 3   
  45.       list2.add(cc); // 索引位置为 4   
  46.       list2.add(repeat); // 索引位置为 5   
  47.       list2.add(dd); // 索引位置为 6   
  48.       System.out.println(list2.indexOf(repeat));   
  49.       System.out.println(list2.lastIndexOf(repeat));   
  50.       System.out.println(list2.indexOf(bb));   
  51.       System.out.println(list2.lastIndexOf(bb));   
  52.       System.out.println("结束!");   
  53.   
  54. //subList(int fromIndex, int toIndex)方法   
  55. //在使用subList(int fromIndex, int toIndex)方法截取现有List集合中的部分对象生成新的List集合时,   
  56. //需要注意的是,新生成的集合中包含起始索引位置代表的对象,但是不包含终止索引位置代表的对象   
  57.       // list a b c d e   
  58.       list = list.subList(13);// 利用从索引位置 1 到 3 的对象重新生成一个List集合   
  59.       for (int i = 0; i < list.size(); i++) {   
  60.       System.out.println(list.get(i));   
  61.       }   
  62.        
  63.       List list22 = new LinkedList();   
  64.       list22 = list.subList(0,1);  //b   
  65.   
  66.       list22.add(aa);   
  67.       list22.add("zhang");   
  68.       list22.add("guang");   //此时 list22 为  B A zhang guang   
  69.       list22.set(0, a);   
  70.       list22.set(1, b);      //此时 list22 为  A B zhang guang   
  71.       for (int i = 0; i < list22.size(); i++) {   
  72.       System.out.println(list22.get(i));   
  73.       }   
  74.       System.out.println("*********************************");   
  75.       List list33 = new LinkedList();   
  76.       list33=list22.subList(13);   
  77.       list22.addAll(list33);                 //整体加list时要用addAll()方法   
  78.       for (int i = 0; i < list22.size(); i++) {   
  79.           System.out.print(list22.get(i)+"\t.");  //get()方法   
  80.           }   
  81.          
  82. //    list33.clear();   
  83. //    for (int i = 0; i < list33.size(); i++) {   
  84. //        System.out.println(list33.get(i));   
  85. //        }   
  86.       System.out.println(list22.contains(a));          // contains()方法   
  87.       //System.out.println(list22.containsAll(list33));  // containsAll()方法   
  88.          
  89.       list22.remove(0);   
  90.       for (int i = 0; i < list22.size(); i++) {   
  91.           System.out.print(list22.get(i)+"\t.");  //get()方法   
  92.           }   
  93.          
  94.       System.out.println("\n"+list22.size());  //size()   
  95.          
  96.       Object[] str = list22.toArray();      //toArray()方法 为Object类型   
  97.       for(int i=0;i<str.length;i++){   
  98.           System.out.print(str[i]+"\t");   
  99.       }   
  100.        System.out.println("\n"+list22+"\t");  //请看直接输出的格式!!!!   
  101.       //run:[B, zhang, guang, B, zhang]    
  102.       //System.out.println(list33+"\t");   
  103.          
  104.   }   
  105. }  
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值