-
大小: 7KB文件类型: .rar金币: 1下载: 0 次发布日期: 2021-06-08
- 语言: Java
- 标签: java LinkedList 比较器 任意排序
资源简介
使用LinkedList类编写程序,用某种集合接口的实现类作存储,实现具有自定义排序功能的包含姓名、年龄、身高、职称等内容的人事信息输入和打印。
代码片段和文件信息
/*
* 编写程序,用某种集合接口的实现类作存储,实现具有自定义排序功能的包含
* 姓名、年龄、身高、职称等内容的人事信息输入和打印。
* 林炳
* 2009年11月22日
*/
import java.io.*;
import java.util.*;
class Student {
int age;
int stature;
String status;
String name;
Student(int ageint statureString statusString name){
this.age=age;
this.stature=stature;
this.status=status;
this.name=name;
}
public boolean equals(Student o){
if((this.age==o.age)&&(this.stature==o.stature)&&(this.status.equals(status))&&(this.name.equals(name)))
return true;
else
return false;
}
}
//构造基于Student的Name的Comparator类
class StuNameComparator implements Comparator{
public int compare(Student st1Student st2)
{
return st1.name.compareTo(st2.name);
}
}
//构造基于Student的Status的Comparator类
class StuStatusComparator implements Comparator{
public int compare(Student st1Student st2)
{
return st1.status.compareTo(st2.status);
}
}
//构造基于Student的Age的Comparator类
class StuAgeComparator implements Comparator{
public int compare(Student st1Student st2)
{
return (st1.age-st2.age);
}
}
//构造基于Student的Stature的Comparator类
class StuStatureComparator implements Comparator{
public int compare(Student st1Student st2)
{
return (st1.stature-st2.stature);
}
}
public class test_linkedlist {
/**
* @param args
*/
//菜单函数
private static int MainMenu() throws IOException{
BufferedReader input=new BufferedReader(new InputStreamReader(System.in));//创建输入流缓冲器
//菜单页面显示内容
System.out.println(“人事信息管理系统“);
System.out.println(“1、添加信息“);
System.out.println(“2、删除信息“);
System.out.println(“3、信息显示“);
System.out.println(“4、退出“);
System.out.print(“请选择操作:“);
String s=input.readLine();//读入输入量
return Integer.parseInt(s);
}
//添加信息输入函数
private static Student input()throws IOException{
System.out.println(“请输入名字 职称 年龄 身高(中间以空格分隔):“);
BufferedReader input=new BufferedReader(new InputStreamReader(System.in));
String s=input.readLine();
String[] s_a=s.split(“ “);//将字符串以空格分成几个字符串数组
Student st;
st=new Student(Integer.parseInt(s_a[2])Integer.parseInt(s_a[3])s_a[1]s_a[0]);
return st;
}
//显示各种根据不同要求排序的结果
private static void DisplaySort(linkedList stu_list){
Iterator stu_iterator=stu_list.iterator();
//根据职称字母自然排序
Collections.sort(stu_listnew StuStatusComparator());
System.out.println(“输出根据职称字母自然排序“);
while(stu_iterator.hasNext()){
Student stu=stu_iterator.next();
System.out.println(“name:“+stu.name+“ Status:“+stu.status+“ Age:“+stu.age+“ Stature:“+stu.stature+“cm“);
}
stu_iterator=stu_list.iterator();
//根据年龄升序排序
Collections.sort(stu_listnew StuAgeComparator());
System.out.println(“输出根据年龄升序排序:“);
while(stu_iterator.hasNext()){
Student stu=stu_iterator.next();
System.out.println(“name:“+stu.name+“ Status:“+stu.status+“ Age:“+stu.age+“ Stature:“+stu.stature+“cm“);
}
stu_iterator=stu_list.iterator();
//根据身高升序排序
C
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 232 2009-11-22 21:52 test_li
文件 391 2009-11-22 21:52 test_li
文件 662 2009-11-26 11:17 test_li
文件 745 2009-11-26 11:17 test_li
文件 752 2009-11-26 11:17 test_li
文件 674 2009-11-26 11:17 test_li
文件 758 2009-11-26 11:17 test_li
文件 4520 2009-11-26 11:17 test_li
文件 5451 2009-11-26 11:17 test_li
目录 0 2009-11-25 22:24 test_li
目录 0 2009-11-22 21:52 test_li
目录 0 2009-11-22 21:52 test_li
----------- --------- ---------- ----- ----
14185 12
- 上一篇:邮件客户端程序
- 下一篇:200道Java程序设计练习题 PDF
相关资源
- 200道Java程序设计练习题 PDF
- 邮件客户端程序
- java连接vfp数据库的
- 《Java从入门到精通》第四版pdf及光盘
- Java开发软件整理Maven、Eclipse、JDK8、
- java 毕业设计外文翻译
- 协同过滤推荐系统 Java
- 实现学生信息管理系统
- Java实现的Apriori算法附测试数据
- JAVA写的四子棋
- 广工Java实验+课设
- java+Access登陆界面
- Java实现的简单JPEG编码程序
- javaweb登陆注册界面
- java web房屋出租系统项目
- 学生成绩管理系统 java源码 以及项目
- 数字时钟java源码
- mchange-commons-java-0.2.15.jar
-
ob
jectOrientedProgrammingwithJava.pdf - java项目实战适合初学者
- 数字图像处理java版源代码
- Java 、Android实现MP4裁剪功能
- java实现RSA算法的大整数编程----实现对
- SHA1或MD5算法获取文件摘要值(JAVA)
- javaWeb激活邮箱验证资料
- javaWeb前后台交互
- oracle+javaweb 电影管理系统
- 《轻量级Java EE企业应用实战第5版》光
- LWJGL-2.90
- javax.servlet的jar包
评论
共有 条评论