山科java实验4-1 编写一个程序,用户可以从键盘录入若干个学生的姓名和分数(程序每次提示用户输入“Y”或“N”决定是否继续录入学生信息,如果用户输入“N”则用户输入完毕。输入的“Y”、“N”不区分

版权声明:欢迎转载,但转载时请注明原文地址 https://blog.csdn.net/weixin_42110638/article/details/83901176

编写一个程序,用户可以从键盘录入若干个学生的姓名和分数(程序每次提示用户输入“Y”或“N”决定是否继续录入学生信息,如果用户输入“N”则用户输入完毕。输入的“Y”、“N”不区分大小写)。用户录入完毕后,程序按成绩由高到低的顺序输出学生的姓名和分数(姓名和分数之间用一个空格分割)。【说明:键盘输入可以使用Scanner类

package 作业1;
import java.util.*;
public class Student {
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		ArrayList<students> list = new ArrayList<students>();
		Scanner scanner = new Scanner(System.in);
		System.out.println("是否继续输入学生信息?(Y/N)");
		while(true)
		{
			String ss = scanner.nextLine();
			if(ss.equals("y")||ss.equals("Y"))
			{
				System.out.println("请输入学生的姓名和成绩:");
				String n = scanner.nextLine();
				double a = scanner.nextDouble();
				list.add(new students(n,a));
				System.out.println("是否继续输入学生信息?(Y/N)");
			}
			else if(ss.equals("n")||ss.equals("N"))
			{
				break;
			}
		}
		Student s = new Student();
		MyComparator myCom = s.new MyComparator();
		Collections.sort(list,myCom);
		System.out.println(list.toString() + " ");
		scanner.close();
	}
	class MyComparator implements Comparator<students>
	{
		public int compare(students t1,students t2)
		{
			if(t1.getScore() < t2.getScore())
				return 1;
			else if(t1.getScore() > t2.getScore())
				return -1;
			else
			    return 0;
		}
	}
}
package 作业1;
//import java.util.*;
public class students  {
	private String name;
	private double score;
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public double getScore() {
		return score;
	}
	public void setScore(double score) {
		this.score = score;
	}
	public String toString() {
		return getName() + " " + getScore();
	}
	public students(String name, double score) {
		this.name = name;
		this.score = score;
	}
	
}

猜你喜欢

转载自blog.csdn.net/weixin_42110638/article/details/83901176