• Set接口


    特点
    import java.util.HashSet;
    import java.util.Set;
    //set集合特点:1.没有索引   2.无序  3.不能存重复元素
    public class Demo01 {
        public static void main(String[] args) {
            Set<String> set=new HashSet<>();
            set.add("hello");
            set.add("hello");
            set.add("hi");
            for(String s:set){
                System.out.println(s);//hi  hello
            }
        }
    }
    Hash表
    import java.util.HashSet;
    import java.util.Set;
    //Hash表  初始容量16  加载因子0.75
    public class Demo03 {
        public static void main(String[] args) {
            Set<String> set=new HashSet<>();
            set.add("a");
            set.add("b");
            set.add("c");
            set.add("c");
        }
    }
    HashSet存储
    public class Person {
        private String name;
        private int age;
        public String getName() {
            return name;
        }
        public void setName(String name) {
            this.name = name;
        }
        public int getAge() {
            return age;
        }
        public void setAge(int age) {
            this.age = age;
        }
        public Person(){}
        public Person(String name, int age) {
            super();
            this.name = name;
            this.age = age;
        }
        public String toString() {
            return "Person [name=" + name + ", age=" + age + "]";
        }
        //点出来的  //重写hashCode方法
        public int hashCode() {
            final int prime = 31;
            int result = 1;
            result = prime * result + age;
            result = prime * result + ((name == null) ? 0 : name.hashCode());
            return result;
        }
        //重写equals方法
        public boolean equals(Object obj) {
            if (this == obj)
                return true;
            if (obj == null)
                return false;
            if (getClass() != obj.getClass())
                return false;
            Person other = (Person) obj;
            if (age != other.age)
                return false;
            if (name == null) {
                if (other.name != null)
                    return false;
            } else if (!name.equals(other.name))
                return false;
            return true;
        }
    }
    
    存储API类型元素
    public class Demo02 {
        public static void main(String[] args) {
            Person p1=new Person();//调用空参
            System.out.println(p1.hashCode());//961
            Person p2=new Person();
            System.out.println(p2.hashCode());//961
            String s1=new String("abc");//构造方法重写
            String s2=new String("abc");
            System.out.println(s1.hashCode());//96354
            System.out.println(s2.hashCode());//96354
        }
    }
    存储自定义类型元素
    import java.util.HashSet;
    import java.util.Set;
    
    public class Demo04 {
        public static void main(String[] args) {
            Set<Person> set=new HashSet<Person>();
            set.add(new Person("a",10));
            set.add(new Person("d",11));
            set.add(new Person("c",12));
            set.add(new Person("c",12));
            for(Person p:set){
                System.out.println(p);//Person [name=a, age=10]
            }                          //Person [name=c, age=12]
        }                              //Person [name=d, age=11]
    }        
    LinkedHashSet
    import java.util.ArrayList;
    import java.util.LinkedHashSet;
    //有序set
    public class Demo05 {
        public static void main(String[] args) {
            LinkedHashSet<String> set=new LinkedHashSet<>();
            set.add("hello");
            set.add("hi");
            set.add("lucky");
            for(String s:set){
                System.out.println(s);
            }
      }
    }
  • 相关阅读:
    项目无法运行iPhone5模拟器
    多线程下载图片,滑动tableView崩溃--资源抢夺问题
    提醒事项 1. 冥想TX 2.下班路上听歌激励自己 3. 不戴眼镜 4. 困难任务拆解
    AutoLayout性能不如frame
    Tunnelblick 覆盖安装失败
    weakSelf 和 strongSelf
    动画
    4/16 近期状态
    知乎live 我的读书经验 总结
    C语言-第23课
  • 原文地址:https://www.cnblogs.com/zhaotao11/p/10235573.html
Copyright © 2020-2023  润新知