TreeSet存储自定义对象
来源:互联网 发布:河北咖啡金科网络 编辑:程序博客网 时间:2024/04/28 17:33
cannot be cast to java.lang.Comparable,遇到这个异常错误,就是说treeMap(或者treeSet)并不知道该如何put(add),就会报这个异常错误。
自定义的对象需要实现Comparable接口。
package com.anzy.set;import java.util.Iterator;import java.util.TreeSet;public class TreeSetDemo {public static void main(String[] args) {TreeSet t = new TreeSet(); //放入treeset中的类必须实现Comparable接口t.add(new Pet("dog",2));t.add(new Pet("dog",3));t.add(new Pet("cat",3));Iterator it = t.iterator();while(it.hasNext()){Pet pet = (Pet) it.next();System.out.println(pet.getAge()+" "+ pet.getName());}}}class Pet implements Comparable{private String name;private int age;public Pet(String name, int age) {this.age = age;this.name = name;}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;}@Overridepublic int compareTo(Object o) {if(!(o instanceof Pet))throw new RuntimeException("不是pet");Pet p = (Pet) o;if(this.age>p.age)return 1;if(this.age == p.age){this.name.compareTo(p.name);//先按age排序然后按照name排序}return -1;}}
0 0
- TreeSet存储自定义对象
- TreeSet存储自定义对象
- 在TreeSet中实现存储自定义对象
- 集合框架-TreeSet存储自定义对象
- 集合框架---TreeSet存储自定义对象
- TreeSet排序,存储自定义对象,自定义比较器示例
- TreeSet存储自定义对象并保证排序和唯一
- TreeSet存储自定义对象,并对对象排序的两种方式
- 在TreeSet中实现存储自定义对象,并且能够按照特定的顺序排序
- Java 往TreeSet集合中存储自定义对象学生,按照学生的年龄进行排序。
- 《java入门第一季》之TreeSet存储自定义对象并保证排序和唯一
- TreeSet存储自定义对象并遍历练习1(按照姓名排序)
- TreeSet存储自定义对象并遍历练习2(按照姓名的长度排序)
- 用TreeSet存储一个Student对象
- java之TreeSet里添加自定义对象
- java中自定义对象排序(TreeSet)
- JAVA之旅(二十)—HashSet,自定义存储对象,TreeSet,二叉树,实现Comparator方式排序,TreeSet小练习
- TreeSet 存储自定义类型时CompareTo 方法应该怎么写
- javascript中的事件委托实例
- Prim算法和Kruskal算法模板
- Npm too much dependence on the causes of webstorm change card analysis
- 比较全面的log4j配置
- Google Chrome 扩展程序
- TreeSet存储自定义对象
- FZU2177
- java.util.concurrent.ExecutionException: java.lang.IllegalStateException: Multi dex requires Build T
- MAKEFILE中的shell命令的一些规则
- 关于Padres的安装
- 第二十三讲项目5-
- (4)矩阵
- javascript--数组
- 模拟实现strstr函数