怎么能保持同步啊

chujin0710 2017-02-23 08:09:15
从键盘输入10个学生的姓名和成绩,用选择法按成绩降序排序并输出(要求姓名和成绩对应关系保持不变)。
...全文
188 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
chujin0710 2017-02-24
  • 打赏
  • 举报
回复
请帮忙打出来代码啊 新手求简单点的解释
jimu2012 2017-02-24
  • 打赏
  • 举报
回复
package net.csdn.sample; import java.util.Scanner; public class SelectSort { /** * 从键盘输入10个学生的姓名和成绩,用选择法按成绩降序排序并输出(要求姓名和成绩对应关系保持不变)。 * @param args */ public static void main(String[] args) { Student[] students = new Student[10]; // 定义大小为10数组,存放输入的10个学生 Scanner in = new Scanner(System.in); for (int i = 0; i < 10; i++) { System.out.println("请输入第" + (i+1) + "个学生姓名和分数(用,隔开):"); String str = in.nextLine(); String[] strs = str.split(","); String name = strs[0]; Integer score = Integer.parseInt(strs[1]); Student student = new Student(name, score); students[i] = student; } System.out.println("排序前:"); for (Student student : students) { System.out.println(student); } SelectSortDesc(students); System.out.println("排序后:"); for (Student student : students) { System.out.println(student); } } /** * 选择排序方法 * @param students */ public static void SelectSortDesc(Student[] students) { for (int i = 0; i < students.length-1; i++) { for (int j = i+1; j < students.length; j++) { if(students[j].getScore() > students[i].getScore()){ Student tempStudent = students[i]; students[i] = students[j]; students[j] = tempStudent; } } } } } /** * 定义学生类 * @author lx666 * */ class Student { private String name; private int score; public Student(String name, int score) { super(); this.name = name; this.score = score; } public String getName() { return name; } public void setName(String name) { this.name = name; } public int getScore() { return score; } public void setScore(int score) { this.score = score; } @Override public String toString() { return this.name + "," + this.score; } }
解开者 2017-02-24
  • 打赏
  • 举报
回复
引用 1 楼 pany1209 的回复:
使用TreeMap,key存储姓名,value存储成绩
TreeMap是按key排序,要用的话也要key存成绩 类似场景,创建一个学生类然后实现Comparable接口更好
jiajing1990_ 2017-02-24
  • 打赏
  • 举报
回复
我的建议是打个顺序标记作为key然后value为名称和成绩
逗泥丸的平方 2017-02-24
  • 打赏
  • 举报
回复
选择法按成绩降序排序并输出 这句话是啥意思. 是说 必须用一次选择排序吗
李德胜1995 2017-02-24
  • 打赏
  • 举报
回复
引用 2 楼 windowsoahil 的回复:
[quote=引用 1 楼 pany1209 的回复:] 使用TreeMap,key存储姓名,value存储成绩
TreeMap是按key排序,要用的话也要key存成绩 类似场景,创建一个学生类然后实现Comparable接口更好[/quote]可以按照value排序的,entrySet放在一个新的List再排序
李德胜1995 2017-02-23
  • 打赏
  • 举报
回复
使用TreeMap,key存储姓名,value存储成绩

62,628

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧