zoukankan      html  css  js  c++  java
  • TreeMap使用和Comparable比较

    package com.mengge.test;
    
    import java.util.Map;
    import java.util.TreeMap;;
    
    public class TestTreeMap {
    	
    	public static void main(String[] args) {
    //		Map<Integer, String> myMap = new TreeMap<Integer, String>();
    		
    //		Map<Integer, String> map = new java.util.TreeMap<>();
    //				
    //		map.put(1, "列宁");
    //		map.put(3, "斯达克");
    //		map.put(100, "时代大厦");
    //		map.put(22, "阿斯达");
    //		map.put(88, "uuuiw");
    //		
    //		for (Integer keyIndex : map.keySet()) {
    //			System.out.println("key:" + keyIndex + ", value:" + map.get(keyIndex));
    //		}
    
    		
    		MyEmployee mye1 = new MyEmployee(10, "张三", 1000);
    		MyEmployee mye2 = new MyEmployee(90, "李四", 90000);
    		MyEmployee mye3 = new MyEmployee(20, "王五", 3000);
    		MyEmployee mye4 = new MyEmployee(30, "赵六", 3000);
    		MyEmployee mye5 = new MyEmployee(900, "王五", 9000);
    		MyEmployee mye6 = new MyEmployee(80, "王七", 7000);
    		MyEmployee mye7 = new MyEmployee(22, "王八", 90000);
    		MyEmployee mye8 = new MyEmployee(9, "王九", 1000);
    
    		Map<MyEmployee, Integer> objectMap = new TreeMap<MyEmployee, Integer>();
    		objectMap.put(mye1, mye1.getNid());
    		objectMap.put(mye2, mye2.getNid());
    		objectMap.put(mye3, mye3.getNid());
    		objectMap.put(mye4, mye4.getNid());
    		objectMap.put(mye5, mye5.getNid());
    		objectMap.put(mye6, mye6.getNid());
    		objectMap.put(mye7, mye7.getNid());
    		objectMap.put(mye8, mye8.getNid());
    		
    		
    		for (MyEmployee emp : objectMap.keySet()) {
    			System.out.println("姓名:" + emp.getName() + ", 薪资:" + emp.getSalary() + ", id:" + emp.getNid());
    		}
    		
    		
    		
    	}
    
    }
    
    
    class MyEmployee implements Comparable<MyEmployee> {
    	private int nid;
    	private String name;
    	private double salary;
    	public MyEmployee(int nid, String name, double salary) {
    		super();
    		this.nid = nid;
    		this.name = name;
    		this.salary = salary;
    	}
    	public int getNid() {
    		return nid;
    	}
    	public void setNid(int nid) {
    		this.nid = nid;
    	}
    	public String getName() {
    		return name;
    	}
    	public void setName(String name) {
    		this.name = name;
    	}
    	public double getSalary() {
    		return salary;
    	}
    	public void setSalary(double salary) {
    		this.salary = salary;
    	}
    	
    	@Override
    	public int compareTo(MyEmployee o) {
    		
    		if (this.salary < o.salary) {
    			return -1;
    		}else if (this.salary > o.salary) {
    			return 1;
    		}else {
    			 if (this.nid < o.nid) {
    					return -1;
    				}else if (this.nid > o.nid) {
    					return 1;
    				}else {
    					return 0;
    				}
    		}
    	}
    	
    	
    }
    
  • 相关阅读:
    Ubuntu 14.04 卸载通过源码安装的库
    Ubuntu 14.04 indigo 相关依赖
    Ubuntu 14.04 indigo 安装 cartographer 1.0.0
    Ubuntu 14.04 改变文件或者文件夹的拥有者
    安装cartographer遇到Unrecognized syntax identifier "proto3". This parser only recognizes "proto2"问题
    Unrecognized syntax identifier "proto3". This parser only recognizes "proto2". ”问题解决方法
    查看所有用户组,用户名
    1卸载ROS
    Ubuntu14.04 软件安装卸载
    Ubuntu14.04系统显示器不自动休眠修改
  • 原文地址:https://www.cnblogs.com/jiefangzhe/p/11290424.html
Copyright © 2011-2022 走看看