【Java TreeMap】测试TreeMap的使用、Comparabe自定义类的自定义排序方式
生活随笔
收集整理的這篇文章主要介紹了
【Java TreeMap】测试TreeMap的使用、Comparabe自定义类的自定义排序方式
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
TreeMap
TreeMap<鍵,值對(duì)>底層是紅黑樹,元素放進(jìn)去之后會(huì)自動(dòng)根據(jù)key排序。
測(cè)試代碼
測(cè)試TreeMap的使用、Comparabe自定義類的自定義排序方式e
package cn.hanquan.test;import java.util.Map; import java.util.TreeMap;public class TreeMapTest {public static void main(String[] args) {Map<Employee, String> treemap1 = new TreeMap<>();treemap1.put(new Employee(5, "布小谷", 2000), "buxiaogu");treemap1.put(new Employee(2, "淳于喬", 5000), "chunyuqiao");treemap1.put(new Employee(1, "魔鬼魚", 5000), "moguiyu");treemap1.put(new Employee(3, "雷軍", 10000), "leijun");treemap1.put(new Employee(4, "雷奕明", 3000), "leiyiming");for (Employee key : treemap1.keySet()) {System.out.println(key.toString() + "->" + treemap1.get(key));}} }class Employee implements Comparable<Employee> {int id;String name;double salary;public Employee(int id, String name, double salary) {super();this.id = id;this.name = name;this.salary = salary;}@Overridepublic int compareTo(Employee o) {//自己的比較規(guī)則if (this.salary > o.salary) {return 1;} else if (this.salary < o.salary) {return -1;} else if (this.id > o.id) {return 1;} else if (this.id < o.id) {return -1;} elsereturn 0;}public String toString() {String str = new String(id + " " + name + " " + salary);return str;} }輸出
5 布小谷 2000.0->buxiaogu
4 雷奕明 3000.0->leiyiming
1 魔鬼魚 5000.0->moguiyu
2 淳于喬 5000.0->chunyuqiao
3 雷軍 10000.0->leijun
總結(jié)
以上是生活随笔為你收集整理的【Java TreeMap】测试TreeMap的使用、Comparabe自定义类的自定义排序方式的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java 把一个InputStream转
- 下一篇: java美元兑换,(Java实现) 美元