集合框架04

一、List接口

 1 public class Demo01 {
 2     /*
 3      * List集合派系,继承Collection接口
 4      * List接口特点:有序,索引,可以重复元素
 5      * 实现类:ArrayList,LinkedList
 6      * 
 7      * List接口中的抽象方法,有一部分方法是和他的父接口Collection是一样的
 8      * List接口的特有方法,带有索引的功能
 9      */
10     public static void main(String[] args) {
11         function_2();
12     }
13     //add(int index, E)将元素插入到指定索引上
14     public static void function(){
15         List<String> list = new ArrayList<String>();
16         list.add("张三1");
17         list.add("张三2");
18         list.add("张三3");
19         list.add("张三4");
20         list.add("张三5");
21         System.out.println(list);
22         
23         list.add(1,"张三6");//带有索引,防止越界异常
24         System.out.println(list);
25     }
26     //E remove(int index)移除指定索引上的元素
27     public static void function_1(){
28         List<Integer> list = new ArrayList<Integer>();
29         list.add(11);
30         list.add(12);
31         list.add(13);
32         list.add(14);
33         list.add(15);
34         
35         int i = list.remove(0);
36         System.out.println(i);
37         System.out.println(list);
38     }
39     
40     //E set(int index,E)修改指定索引上的元素,返回被修改前的元素
41     public static void function_2(){
42         List<Double> list = new ArrayList<Double>();
43         list.add(1.1);
44         list.add(1.2);
45         list.add(1.3);
46         list.add(1.4);
47         list.add(1.5);
48         System.out.println(list);
49         
50         Double i = list.set(2, 1.6);
51         System.out.println(i);
52         System.out.println(list);
53     }
54 }

二、迭代器的并发修改异常

 1 public class 迭代器的并发修改异常 {
 2     //迭代器的并发修改异常java.util.ConcurrentModificationException
 3     //就是在遍历的过程中,使用了集合方法修改了集合的长度,不允许 
 4     public static void main(String[] args) {
 5         List<String> list = new ArrayList<String>();
 6         list.add("a11");
 7         list.add("a12");
 8         list.add("a13");
 9         list.add("a14");
10         
11         //对集合使用迭代器进行获取,获取时判断集合中是否存在“a13”对象,若存在,添加一个“A3”元素
12         Iterator<String> it = list.iterator();
13         while(it.hasNext()){
14             String s = it.next();
15             if(s.equals("a13"))
16                 list.add("A13");
17             System.out.println(s);
18         }
19     }
20 }

三、ArrayList集合(存储结构是数组)

特点:增删慢,查找快,不同步,线程不安全,运行速度快

四、LinkedList集合

特点:增删快,查找慢,不同步,线程不安全,运行速度快

五、Vector集合(存储结构是数组)

特点:同步,线程安全,运行速度慢

六、Set接口

不允许存储重复对象

 

转载于:https://www.cnblogs.com/Nelsoner/p/6684850.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值