为TreeSet集合增加比较器实现排序
来源:互联网 发布:js替换全部字符串 编辑:程序博客网 时间:2024/06/05 16:14
package com.liangjing.set;import java.util.Comparator;import java.util.Iterator;import java.util.TreeSet;public class TreeSetTest {/** * @param args */public static void main(String[] args) { //main方法 // TODO Auto-generated method stubTreeSet set = new TreeSet(new MyComparator() {//构造方法内传递比较器实例});//set.add("C");//set.add("A");//set.add("B");//set.add("E");//set.add("F");//set.add("D");//实例化Student s1 = new Student(78);Student s2 = new Student(95);Student s3 = new Student(82);Student s4 = new Student(69);//加入集合set.add(s1);set.add(s2);set.add(s3);set.add(s4);<span style="white-space:pre"></span>//迭代器输出for (Iterator iter = set.iterator(); iter.hasNext();) {//String value = (Student)iter.next();//System.out.println(value);Student Student =(Student)iter.next();System.out.println(Student.score); //直接打印Student输出也一样?}}}class Student { //学生类int score; //分数属性public Student(int score) { // 构造方法this.score = score;}public String toString() { //toString重写,此处不是必须return String.valueOf(this.score);}}class MyComparator implements Comparator { //自定义比较器实现Comparator接口 compare方法,这里实现逆序public int compare(Object o1, Object o2) {//String s1 = (String) o1;//String s2 = (String) o2;//return s2.compareTo(s1);Student s1 =(Student)o1; Student s2 =(Student)o2;return s2.score-s1.score; //逆序}}输出 //注释部分输出 FEDCBA
95827869
0 0
- 为TreeSet集合增加比较器实现排序
- TreeSet集合的一个比较器排序去重案例
- TreeSet集合存放自定义类型的对象,可以使用比较器,实现Comparable接口自己设置排序方式
- 集合框架--TreeSet集合Comparator比较器
- TreeSet集合排序两种实现方式Comparable和Comparator比较
- TreeSet集合排序两种实现方式Comparable和Comparator比较
- TreeSet集合排序两种实现方式Comparable和Comparator比较
- TreeSet实现集合中对象排序
- 实现Comparator方式排序一TreeSet集合
- 【TreeSet】自然排序与比较器排序
- TreeSet集合中自定义比较器
- TreeSet集合排序原理
- TreeSet集合内部排序
- TreeSet 使用指定比较器进行排序
- (68)TreeSet练习:两种排序方式:自然排序(实现comparable接口)、比较器
- java基础—自定义一个比较器,对TreeSet 集合中的元素按指定方法来排序(java集合六)
- Map集合和TreeSet集合的使用:自定义比较器
- 22-(集合框架-TreeSet集合) 1 2 23-(集合框架-TreeSet集合-Comparator比较器) 24(集合框架-TreeSet集合 25 -字符串长度排xu
- 前端人应该知道的排序知识
- 深度学习主机环境配置: Ubuntu16.04+GeForce GTX 1080+TensorFlow
- 链表
- C++对象的动态建立和释放
- Android studio清除项目中无用的资源
- 为TreeSet集合增加比较器实现排序
- 日常一水
- 顺序栈
- NRF51822 连续广播
- 【JEECG Docker安装】CentOS6下docker的安装和使用
- 利用input工具发送按键事件
- C++实现二叉排序树BSTree --插入删除摧毁查找等操作
- 链栈
- Android开发之Fragment懒加载技术