java程序设计之集合中的泛型的应用

来源:互联网 发布:报告式资产负债表 知乎 编辑:程序博客网 时间:2024/06/06 07:36
    集合中的泛型值的就是集合后面<>中的类容。如Collection<E>指的就是E中的类容,他可以是一个类,也可以是String,还可以是Integer,同样也可以是一个集合。 声明什么类型,那么添加元素就必须是他的实例或者子类的实例
public static void main(String[] args) {        TreeSet<String> set = new TreeSet<>();         set.add("java1");        set.add("java2");         set.add("android");         set.add("ios");         set.add("c++");         set.add("sql");        System.out.println(set);        // 如果需要使用其他类型,那么必须实现comparator接口        TreeSet<User> users = new TreeSet<>();        users.add(new User("zhangsan", "123456", 5));        users.add(new User("lisi", "d5413ba", 10));        users.add(new User("wangwu", "86asd", 3));        users.add(new User("zhaoliu", "1234", 9));        users.add(new User("tianqi", "abasd", 7));        System.out.println(users);    }    static class User implements Comparable<User> {        // 一个对象的是写在本类中的        // 两个对象的是写在外面的        String name;        String pwd;        int id;        public User(String name, String pwd, int id) {            super();            this.name = name;            this.pwd = pwd;            this.id = id;        }        @Override        public String toString() {            return "User [name=" + name + ", pwd=" + pwd + "id=" + id + "]";        }        @Override        public int compareTo(User o) {            // 该类按照name去排序,升序, 倒叙加-            // 如果按照int值排序            return -(id - o.id);//倒序        }    }}
0 0