求java中类似学生信息管理系统中按学号,按姓名排序的代码

如题所述

import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;

public class Sort {
public static void main(String[] args) {
Student p1 = new Student(1001, "小明", 20);
Student p2 = new Student(1002, "小红", 21);
Student p3 = new Student(1003, "小黑", 19);
List<Student> list = new ArrayList<Student>();
list.add(p1);
list.add(p2);
list.add(p3);
Collections.sort(list, new Comparator<Student>() {
/*
 * int compare(Student o1, Student o2) 返回一个基本类型的整型, 返回负数表示:o1 小于o2,
 * 返回0 表示:o1和o2相等, 返回正数表示:o1大于o2。
 */
public int compare(Student o1, Student o2) {
// 按照学生的学号进行升序排列
if (o1.getId() > o2.getId()) {
return 1;
}
if (o1.getId() == o2.getId()) {
return 0;
}
return -1;
}
});
write(list);
System.out.println("---------------------");
Collections.sort(list, new Comparator<Student>() {
/*
 * int compare(Student o1, Student o2) 返回一个基本类型的整型, 返回负数表示:o1 小于o2,
 * 返回0 表示:o1和o2相等, 返回正数表示:o1大于o2。
 */
public int compare(Student o1, Student o2) {
// 按照学生的年龄进行升序排列
if (o1.getAge() > o2.getAge()) {
return 1;
}
if (o1.getAge() == o2.getAge()) {
return 0;
}
return -1;
}
});
write(list);
}

public static void write(List<Student> list) {
for (Student s : list) {
System.out.println(s.getId() + "\t" + s.getName() + "\t"
+ s.getAge());
}

}

}


public class Student {
private int id ;
private String name;
private int age;
//构造方法
public Student(int id,String name,int age){
this.id = id;
this.name = name;
this.age = age;
}

public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}

追问

多谢多谢🙏🏻

追答

客气客气 这是没有涉及到数据库的 在代码中进行排序 如果是从数据库中取 可以直接用sql语句进行排序

追问

我的是数据库中取怎么办呢?😏

追答

只能给你发sql语句 至于怎么连数据库取数据这个没法发 那就是一个小项目了……
selet * from 表名 order by id asc ,age asc

追问

好的好的,蟹蟹啦

温馨提示:内容为网友见解,仅供参考
第1个回答  2017-05-10
那是你做了对不起他的事情了追问

???

求java中类似学生信息管理系统中按学号,按姓名排序的代码
import java.util.ArrayList;import java.util.Collections;import java.util.Comparator;import java.util.List;public class Sort {public static void main(String[] args) {Student p1 = new Student(1001, "小明", 20);Student p2 = new Student(1002, "小红", 21);Student p3 = new Student...

求java用c语言写一个的一个关于学生的名字,学号,成绩等一些的全英文编程...
charname[NAMELEN+1];\/* 姓名 *\/ char code[CODELEN+1];\/* 学号 *\/ int marks[SWN];\/* 各课程成绩 *\/ int total;\/* 总分 *\/ }stu;struct node { charname[NAMELEN+1];\/* 姓名 *\/ char code[CODELEN+1];\/* 学号 *\/ int marks[SWN];\/* 各课程成绩 *\/ int total;\/* 总分...

用java定义学生类(学号、姓名、成绩)。用列表list存放班级学生信息...
return "学号:" + no + ",姓名:" + name + ",成绩:" + chengji;} } 结果 排序前 学号:000,姓名:a,成绩:100.0 学号:001,姓名:b,成绩:99.0 学号:002,姓名:c,成绩:98.0 排序后 学号:002,姓名:c,成绩:98.0 学号:001,姓名:b,成绩:99.0 学号:000,姓名:a,成绩:100.0 ...

制作学生信息(姓名,学号,成绩)管理系统(用Java)
import java.awt.CardLayout;import java.awt.Container;import java.awt.Font;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.Icon;import javax.swing.ImageIcon;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax...

java输出学生学号,姓名,成绩
import java.util.ArrayList;import java.util.Random;public class Test { public static void main(String[] args) { ArrayList<Student> list = new ArrayList<Student>(); \/\/ 初始化成绩 for (int n = 0; n < 20; n++) { Student st = new Student(); st.setKemu1(new ...

Java实现学生简易信息管理系统
= new LinkedList<>();public void add(){Scanner sc = new Scanner(System.in); System.out.println("请输入学生学号:");String id = sc.nextLine();int intId = 0;try{intId = Integer.parseInt(id);}catch(NumberFormatException ex){System.out.println("学号输入有误,请输入数字!"...

用Java 实现一个简单的学生管理系统! 求代码,求代码!!!
import java.io.*;public class student { public static void main(String args[]) throws IOException{ int[] stud = {77,99,55,46,82,75,65,31,74,85};System.out.println("请选择功能:");\/\/输入编号选择功能 System.out.println("1、输入学号,查询该学生成绩:");System.out.println...

用JAVA定义一个学生类Student来表示学生信息,学生类中包含成员有学号...
public class Student {private int sNo; \/\/学号private String name; \/\/姓名private String sex; \/\/性别private int yu; \/\/语文private int shu; \/\/数学private int wai; \/\/外语public int getsNo() {return sNo;}public void setsNo(int sNo) {this.sNo = sNo;}public String ge...

Java实现一个简单的学生信息管理系统
return "学号:" + id + " 姓名:" + name + " 年龄:" + age + " 成绩:" + score;} } Manager类 import java.util.ArrayList;import java.util.Iterator;import java.util.List;public class Manager { private List<Student> list;public Manager(List<Student> list){ this.list = ...

用java定义一个学生类,要处理的信息有学号、姓名、年龄、专业。
\/\/ 一个简单的学生类 public class Student { private int sno; \/\/ 学号 private String sname; \/\/ 姓名 private int sage; \/\/ 年龄 private String profession; \/\/ 专业 public Student() { } public Student(int sno, String sname, int sage, String profession) { super();this.sno = ...

相似回答