首页 > 其他 > 详细

泛型与集合实验

时间:2020-12-02 14:26:20      阅读:52      评论:0      收藏:0      [点我收藏+]

有10名员工,其属性有工号和工资。编写一个程序,使用TreeMap<K,V>,分别按照工号和工资排序输出所有员工的信息。?

提示:TreeMap<K,V>以下两个成员方法可供使用:?

public?Set<K>?keySet()?

Returns?a?Set?view?of?the?keys?contained?in?this?map.?The?set‘s?iterator?returns?the?keys?in?ascending?order.?

public?Collection<V>?values()?

Returns?a?Collection?view?of?the?values?contained?in?this?map.?The?collection‘s?iterator?returns?the?values?in?ascending?order?of?the?corresponding?keys.?

import java.util.*;
class salary implements Comparable {
    double key=0;
    salary(double d) {
        key=d;
    }
    public int compareTo(Object b) {
        salary disc=(salary)b;
        if((this.key-disc.key)==0)
            return -1;
        else
            return (int)((this.key-disc.key)*1000);
    }
}
class Number{
    int number;
    double price;
    Number(int m,double e) {
        number=m;
        price=e;
    }
}
public class test {
    public static void main(String args[ ]) {
        TreeMap<salary,Number>  treemap= new TreeMap<salary,Number>();
        int amount[]={12,23,15,17,24,19,22,18,20,25,10};
        double price[]={40,20,10,80,30,22,38,32,25,16};
        Number UDisc[]=new Number[10];
        for(int k=0;k<UDisc.length;k++) {
            UDisc[k]=new Number(amount[k],price[k]);
        }
        salary key[]=new salary[10];
        for(int k=0;k<key.length;k++) {
            key[k]=new salary(UDisc[k].number);        }
        for(int k=0;k<UDisc.length;k++) {
            treemap.put(key[k],UDisc[k]);                 }
        int number=treemap.size();
        Collection<Number> collection=treemap.values();
        Iterator<Number> iter=collection.iterator();
        System.out.println("按照工号排列:");
        System.out.println("工号"+"   "+"工资");
        while(iter.hasNext()) {
            Number disc=iter.next();
            System.out.println(+disc.number+"     "+disc.price+"千元");       }
        treemap.clear();
        for(int k=0;k<key.length;k++) {
            key[k]=new salary(UDisc[k].price);       }
        for(int k=0;k<UDisc.length;k++) {
            treemap.put(key[k],UDisc[k]);       }
        number=treemap.size();
        collection=treemap.values();
        iter=collection.iterator();
        System.out.println("按照工资排列:");
        System.out.println("工资"+"        "+"工号");
        while(iter.hasNext()) {
            Number disc=iter.next();
            System.out.println(disc.price+"千元"+"     "+disc.number);
        }
    }
}

 

import java.util.*;
class salary implements Comparable {
    double key=0;
    salary(double d) {
        key=d;
    }
    public int compareTo(Object b) {
        salary disc=(salary)b;
        if((this.key-disc.key)==0)
            return -1;
        else
            return (int)((this.key-disc.key)*1000);
    }
}
class Number{
    int number;
    double price;
    Number(int m,double e) {
        number=m;
        price=e;
    }
}
public class test {
    public static void main(String args[ ]) {
        TreeMap<salary,Number>  treemap= new TreeMap<salary,Number>();
        int amount[]={12,23,15,17,24,19,22,18,20,25,10};
        double price[]={40,20,10,80,30,22,38,32,25,16};
        Number UDisc[]=new Number[10];
        for(int k=0;k<UDisc.length;k++) {
            UDisc[k]=new Number(amount[k],price[k]);
        }
        salary key[]=new salary[10];
        for(int k=0;k<key.length;k++) {
            key[k]=new salary(UDisc[k].number);        }
        for(int k=0;k<UDisc.length;k++) {
            treemap.put(key[k],UDisc[k]);                 }
        int number=treemap.size();
        Collection<Number> collection=treemap.values();
        Iterator<Number> iter=collection.iterator();
        System.out.println("按照工号排列:");
        System.out.println("工号"+"   "+"工资");
        while(iter.hasNext()) {
            Number disc=iter.next();
            System.out.println(+disc.number+"     "+disc.price+"千元");       }
        treemap.clear();
        for(int k=0;k<key.length;k++) {
            key[k]=new salary(UDisc[k].price);       }
        for(int k=0;k<UDisc.length;k++) {
            treemap.put(key[k],UDisc[k]);       }
        number=treemap.size();
        collection=treemap.values();
        iter=collection.iterator();
        System.out.println("按照工资排列:");
        System.out.println("工资"+"        "+"工号");
        while(iter.hasNext()) {
            Number disc=iter.next();
            System.out.println(disc.price+"千元"+"     "+disc.number);
        }
    }
}

  

泛型与集合实验

原文:https://www.cnblogs.com/xgcl/p/14073212.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!