[自然排序] package com.hxl; public class Student implements Comparable<Student> { private String name; private int age; public Student() { super(); } public Student(String name, int age) { super(); this.name = name; this.age = age; } public String getNa…
==知识点== 1.泛型 2.Set集合 3.TreeSet 4.数据结构-二叉树 5.数据结构-平衡二叉树 ==用到的单词== 1.element[ˈelɪmənt] 要素 元素(软) 2.key[kiː] 计算机或打字机的) 键; 3.type[taɪp] 类型; 4.value[ˈvæljuː] 值 5.genericity 泛型 6.comparable[ˈkɒmpərəbl] 可比较的; 7.compare[kəmˈpeə(r)] 比较 8.comparator[kəmˈpɜrətər…
/* 1. 往TreeSet添加元素的时候,如果元素本身具备了自然顺序的特性,那么就按照元素自然顺序的特性进行排序存储. 2. 往TreeSet添加元素的时候,如果元素本身不具备自然顺序的特性,那么该元素所属的类必须要实现Comparable接口,把元素 的比较规则定义在compareTo()方法上. 3. 如果比较元素的时候,compareTo方法返回的是0,那么该元素就被视为重复元素,不允许添加. (注意:TreeSet与HashCode.equals方法是没有任何关系.) 4. 往Tree…
TreeSet: 1.特点 TreeSet是用来排序的, 可以指定一个顺序, 对象存入之后会按照指定的顺序排列 2.使用方式 a.自然顺序(Comparable) TreeSet类的add()方法中会把存入的对象提升为Comparable类型 调用对象的compareTo()方法和集合中的对象比较(当前存入的是谁,谁就会调用compareTo方法) 根据compareTo()方法返回的结果进行存储 b.比较器顺序(Comparator) 创建TreeSet的时候可以制定 一个Comparator…
/** * 对象比较大小compare的用法 字符串排序 * 练习代码, 给定字符串" nba" "cba" "ncaa" "wba" ... 思路: 1.排序,想到数组的排序.数组排序想到选择排序,或者冒泡排序 2.用数组排序的思路做此题.(字符串同理) 3.遍历数组,比较每一个元素与下一个元素的大小关系 4.最后交换两个元素位置 5.输出结果 经过学习总结: 1.String本身是不具备比较大小功能的,但是由于String…
Collentions工具类--java.util.Collections Collentions是Java集合框架中,用来操作集合对象的工具类,也是Java集合框架的成员,与List.Map和Set是并列的. Collections.sort() 排序方法,实现对List对象中的元素进行排序. package com.test.collection; import java.util.ArrayList; import java.util.Collections; import java.ut…
这一篇对TreeSet做介绍,先看一个简单的例子: * TreeSet:能够对元素按照某种规则进行排序.  * 排序有两种方式  * A:自然排序: 从小到大排序  * B:比较器排序    Comparator import java.util.TreeSet; * TreeSet集合的特点:排序和唯一 * * 通过观察TreeSet的add()方法,我们知道最终要看TreeMap的put()方法.因为TreeMap是NavigableMap接口的实现类 */ public class Tre…
>TreeSet集合使用实例 >TreeSet集合的红黑树 存储与取出(图) >TreeSet的add()方法源码     TreeSet集合使用实例 package cn.itcast_05; import java.util.TreeSet; /* * TreeSet:能够对元素按照某种规则进行排序. * 排序有两种方式 * A:自然排序 * B:比较器排序 * * TreeSet集合的特点:排序和唯一 * * 通过观察TreeSet的add()方法,我们知道最终要看TreeMap的…
TreeSet集合默认会进行排序.因此必须有排序,如果没有就会报类型转换异常. 自然排序 Person class->实现Comparable,实现compareTo()方法 package Homework1and2; import java.text.CollationKey; import java.text.Collator; /** * Person类 有属性 name,age,sex 排序规则: 第一条件 年龄降序,第二条件 姓名 降序,第三条件 性别升序 * @author Adm…
package cn.itcast.day21.treeset2; import java.util.Comparator; import java.util.TreeSet; /* * TreeSet 按照自定义对象Student的姓名长度 比较器排序 * * 自然排序or比较器排序取决于,TreeSet的构造方法 * 无参构造:自然排序 * 有参构造: 比较器排序 * * TreeSet集合保证元素排序和唯一性的原理 * 唯一性:根据比较的返回是否是0来决定 * 排序: * A:自然排序(元…