文章

27

粉丝

492

获赞

10

访问

257.0k

头像
华科-成绩排序(主要是重写比较方法+面向对象思想)+变式题1338
P1404 华中科技大学
发布于2020年4月9日 18:19
阅读数 8.7k


import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
import java.util.Scanner;

/**1.此题关键在于新定义集合collection.sort方法,需要重写comparable<比较类型>接口中的compareTo的比较规则,默认方法是比较两个字符串,按照升序排
 * 2.!!类需要实现接口才能重写里面的方法
 * 3.数组或集合对象是可以直接输出的,输出方式可以重写toString方法来实现,也可以get,set方法输出,前者更清晰简洁
 * 4.华科-成绩排序
 * @author 回到原点
 *
 */
public class Main{

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Scanner sc = new Scanner(System.in);
		int n=Integer.parseInt(sc.nextLine());
        List student=new ArrayList();
		for(int i=0;i{
		String name;
		int age;
		int score;
		public Student(String name, int age, int score) {
			super();
			this.name = name;
			this.age = age;
			this.score = score;
		}
		public int compareTo(Student s) { //重新定义比较方法,先比较分数,再比较姓名,最后比较年龄
			if(this.score-s.score==0) {
				if(this.name.compareTo(s.name)==0) {
					return this.age-s.age;
				}else {
					return this.na...
登录查看完整内容


登录后发布评论

暂无评论,来抢沙发