ArrayList和HastSet的区别是什么?

今天看Redis官方案例,出现了列表和集合概念,列表在Java中指的就是List,集合在Java中指的就是Set,那么怎么实现列表和集合,以及它们有什么区别呢?

我写了个Demo演示下:

import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
import java.util.Set;

public class ListDemo {

    public static void main(String[] args) {
        // TODO Auto-generated method stub

        //对比:HashSet里面的值是是不可重复的,ArrayList里面的值可以重复
        //HastSet存的数据是有序的,ArrayList存的数据无序
        Set<String> set=new HashSet<String>();
        set.add("222");
        set.add("111");
        set.add("111");
        set.add("333");    
        for(String str:set) {
            System.out.println(str);
        }
        System.out.println("------分割线------");
        List<String> list=new ArrayList<String>();
        list.add("222");
        list.add("111");
        list.add("111");
        list.add("333");        
        for(String str:list) {
            System.out.println(str);
        }
        
    }

}

 得出的结果如下所示:

可以验证我的注释:

HashSet里面的值是是不可重复的,ArrayList里面的值可以重复
        //HastSet存的数据是有序的,ArrayList存的数据无序
是正确的。

 最后为了更好的理解,找了一张结构图供亲们参考:

猜你喜欢

转载自www.cnblogs.com/shuai7boy/p/12467318.html