public class student {
String num,name;
double height,weight,java成绩,数据结构成绩;
student(String num,String name,double height,double weight,double java成绩,double 数据结构成绩){
this.num=num;
this.name=name;
this.height=height;
this.weight=weight;
this.java成绩=java成绩;
this.数据结构成绩=数据结构成绩;
}
}
public class key {
String name;
double height,java成绩,数据结构成绩;
key(String name,double height,double java成绩,double 数据结构成绩){
this.name=name;
this.height=height;
this.java成绩=java成绩;
this.数据结构成绩=数据结构成绩;
}
/*public class key implements Comparable<Object>
public int compareTo(Object b){
key k=(key)b;
if((this.java成绩+this.数据结构成绩)-(k.java成绩+k.数据结构成绩)!=0)
return (int)((this.java成绩+this.数据结构成绩)-(k.java成绩+k.数据结构成绩));
else if(!this.name.equals(k.name))//return 1;
return this.name.compareTo(k.name);
else return (int)(this.height-height);
}*/
}
import java.util.*;
public class treemap {
public static void main(String[] args) {
student s1=new student("1","张三",175,65,75,75),
s2=new student("2","李四",169,61,71,81),
s3=new student("3","王五",171,59,69,81),
s4=new student("4","张三",170,60,70,80),
s5=new student("5","朱六",174,76,80,83);
//TreeMap<key, student> treemap=new TreeMap<key,student>();
TreeMap<key,student> treemap = new TreeMap<key, student>(new Comparator<key>(){
public int compare(key o1, key o2){
if((o1.java成绩+o1.数据结构成绩)-(o2.java成绩+o2.数据结构成绩)!=0)
return (int)((o1.java成绩+o1.数据结构成绩)-(o2.java成绩+o2.数据结构成绩));
else if(!o1.name.equals(o2.name))
return o1.name.compareTo(o2.name);
else return (int)(o1.height-o2.height);
}
});
treemap.put(new key(s1.name,s1.height,s1.java成绩,s1.数据结构成绩), s1);
treemap.put(new key(s2.name,s2.height,s2.java成绩,s2.数据结构成绩), s2);
treemap.put(new key(s3.name,s3.height,s3.java成绩,s3.数据结构成绩), s3);
treemap.put(new key(s4.name,s4.height,s4.java成绩,s4.数据结构成绩), s4);
treemap.put(new key(s5.name,s5.height,s5.java成绩,s5.数据结构成绩), s5);
System.out.println("qweqwrwrw:");
Collection<student> col=treemap.values();
Iterator<student>iter =col.iterator();
while(iter.hasNext()){
student s0=iter.next();
System.out.println(s0.num+" "+s0.name+" "+s0.height+" "+s0.weight+" "+s0.java成绩+" "+s0.数据结构成绩);
}
}
}