今天看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存的数据无序
是正确的。
最后为了更好的理解,找了一张结构图供亲们参考: