您当前的位置: 首页 >  Java

彭世瑜

暂无认证

  • 0浏览

    0关注

    2791博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

Java学习路线-36:Set集合

彭世瑜 发布时间:2020-01-04 22:10:21 ,浏览量:0

第30 章 : Set集合 130 Set接口简介

Set集合不允许保存重复数据 继承关系

-@Iterable
    -@Collection
        -@Set
            -@SortedSet
                -@NavigableSet


AbstractCollection(Collection)
    -AbstractSet(Set)
        -HashSet(Set, Cloneable, java.io.Serializable) 
        -TreeSet(NavigableSet, Cloneable, java.io.Serializable)
131 HashSet子类

HashSet元素无序

import java.util.HashSet;
import java.util.Set;

class Demo{
    public static void main(String[] args) {
        Set list = new HashSet();
        list.add("Hello");
        list.add("Hello");
        list.add("World");
        System.out.println(list);
        // [Hello, World]

        list.forEach(System.out::println);
        /**
         Hello
         World
         */

    }
}
132 TreeSet子类

TreeSet数据有序,按照升序排序

import java.util.Set;
import java.util.TreeSet;

class Demo{
    public static void main(String[] args) {
        Set list = new TreeSet();
        list.add("Hello");
        list.add("Hello");
        list.add("World");
        System.out.println(list);
        // [Hello, World]

        list.forEach(System.out::println);
        /**
         Hello
         World
         */
    }
}
133 分析TreeSet子类排序操作

TreeSet 通过TreeMap实现 需要实现Comparable接口 自定义类需要将所有属性进行比对,首选HashSet

import java.util.Set;
import java.util.TreeSet;

class Person implements Comparable {
    private String name;
    private int age;

    public Person(String name, int age) {
        this.name = name;
        this.age = age;
    }

    @Override
    public int compareTo(Person other) {
        if (this.age > other.age) {
            return 1;
        } else if (this.age  other.age) {
            return 1;
        } else if (this.age             
关注
打赏
1665367115
查看更多评论
0.1952s