求java代码,要求做一个测试类,实现以下功能之一。最好三个功能都有。

 我来答
摩羯lzq
2013-05-15 · TA获得超过335个赞
知道答主
回答量:58
采纳率:100%
帮助的人:9万
展开全部
import java.util.*;
public class Admin {//管理类
Scanner in=new Scanner(System.in);

String msg="\t编号\t姓名\t年龄\tJava\tC#\tHtml\tSql\t总分\t平均分";
public void print(Student[] arr){//输出方法
System.out.println(msg);
for(int i=0;i<arr.length;i++){
if(arr[i]!=null){
arr[i].setSum();
arr[i].setAvg();
System.out.println(arr[i]);
}
}
}

public boolean exist(int num,Student stu){//判断存在方法
if(stu!=null){
if(stu.getNum()==num){
return true;
}else{
return false;
}
}
return false;
}

public void create(String name,int age,Student[] arr){//添加方法
Student stu=new Student();
stu.setName(name);
stu.setAge(age);
int i=this.setIndex(arr);
stu.setNum(i);
if(i==9999){
System.out.println("添加学生人数已达到上限,不能再添加了!");
}else{
arr[i]=stu;
}
this.print(arr);
}

public int setIndex(Student[] arr){// 返回下标
for(int i=0;i<arr.length;i++){
if(arr[i]==null){
return i;
}
}
return 9999;
}

public void select(int num,Student[] arr){//查找方法
System.out.println(msg);
for(int i=0;i<arr.length;i++){
/*if(arr[i]!=null){
if(arr[i].getNum()==num){
System.out.println(arr[i]);
return;
}
}*/
if(this.exist(num, arr[i])){
System.out.println(arr[i]);
return;
}
}
System.out.println("\t---!没有这个学生的存在!---\t");
}

public void update(int num,Student[] arr){//更新方法
for(int i=0;i<arr.length;i++){
if(this.exist(num, arr[i])){
System.out.println("请输入修改的姓名:");
arr[i].setName(in.next());
System.out.println("请输入修改的年龄:");
arr[i].setAge(in.nextInt());
System.out.println("---更新信息成功---");
this.print(arr);
return;
}
}
System.out.println("---更新信息失败---");
}

public void delete(int num,Student[] arr){//删除方法
for(int i=0;i<arr.length;i++){
if(this.exist(num, arr[i])){
arr[i]=null;
System.out.println("---删除信息成功---");
this.print(arr);
return;
}
}
System.out.println("---删除信息失败---");
}

public void input(int num,Student[] arr){//输入方法
for(int i=0;i<arr.length;i++){
if(this.exist(num, arr[i])){
System.out.println("请输入"+arr[i].getName()+"学生的java成绩:");
if(in.hasNextInt()){
arr[i].setJava(in.nextInt());
}
//arr[i].setJava(in.nextInt());
System.out.println("请输入"+arr[i].getName()+"学生的c_sharp成绩:");
if(in.hasNextInt()){
arr[i].setC_sharp(in.nextInt());
}
//arr[i].setC_sharp(in.nextInt());
System.out.println("请输入"+arr[i].getName()+"学生的html成绩:");
if(in.hasNextInt()){
arr[i].setHtml(in.nextInt());
}
//arr[i].setHtml(in.nextInt());
System.out.println("请输入"+arr[i].getName()+"学生的sql成绩:");
if(in.hasNextInt()){
arr[i].setSql(in.nextInt());
}
//arr[i].setSql(in.nextInt());
this.print(arr);
break;
}
}
}

public void couseSort(int num,Student[] arr){//学科排序方法
if(num==1){
for(int i=0;i<arr.length-1;i++){
for(int j=i+1;j<arr.length;j++){
if(arr[i]!=null&arr[j]!=null){
if(arr[i].getJava()<arr[j].getJava()){
Student t=arr[i];
arr[i]=arr[j];
arr[j]=t;
}
}
}
}
}else if(num==2){
for(int i=0;i<arr.length;i++){
for(int j=i+1;j<arr.length;j++){
if(arr[i]!=null&arr[j]!=null){
if(arr[i].getC_sharp()<arr[j].getC_sharp()){
Student t=arr[i];
arr[i]=arr[j];
arr[j]=t;
}
}
}
}
}else if(num==3){
for(int i=0;i<arr.length;i++){
for(int j=i+1;j<arr.length;j++){
if(arr[i]!=null&arr[j]!=null){
if(arr[i].getHtml()<arr[j].getHtml()){
Student t=arr[i];
arr[i]=arr[j];
arr[j]=t;
}
}
}
}
}else if(num==4){
for(int i=0;i<arr.length;i++){
for(int j=i+1;j<arr.length;j++){
if(arr[i]!=null&arr[j]!=null){
if(arr[i].getSql()<arr[j].getSql()){
Student t=arr[i];
arr[i]=arr[j];
arr[j]=t;
}
}
}
}
}
this.print(arr);
}

public void sumSort(Student[] arr){//总分排序方法
for(int i=0;i<arr.length;i++){
for(int j=i+1;j<arr.length;j++){
if(arr[i]!=null&arr[j]!=null){
if(arr[i].getSum()<arr[j].getSum()){
Student t=arr[i];
arr[i]=arr[j];
arr[j]=t;
}
}
}
}
this.print(arr);
}
}
public class Student {//学生类
private int num;
private String name;
private int age;
private int java;
private int c_sharp;
private int html;
private int sql;
private int sum;
private double avg;

public int getNum(){
return num;
}
public void setNum(int num){
this.num=num;
}
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;
}
public int getJava() {
return java;
}
public void setJava(int java) {
this.java = java;
}
public int getC_sharp() {
return c_sharp;
}
public void setC_sharp(int c_sharp) {
this.c_sharp = c_sharp;
}
public int getHtml() {
return html;
}
public void setHtml(int html) {
this.html = html;
}
public int getSql() {
return sql;
}
public void setSql(int sql) {
this.sql = sql;
}
public int getSum() {
return sum;
}
public void setSum() {
this.sum =this.java+this.c_sharp+this.html+this.sql;
}
public double getAvg() {
return avg;
}
public void setAvg() {
this.avg = this.sum/4;
}
public String toString(){
String msg="\t"+this.num+"\t"+this.name+"\t"+this.age+"\t"+this.java+"\t"+this.c_sharp+"\t"+this.html+"\t"+this.sql+"\t"+this.sum+"\t"+this.avg+"\t";
return msg;
}
}
import java.util.*;
public class Main {//主
public static void main(String[] args){
Scanner in=new Scanner(System.in);
System.out.println("---请定义学生的人数---");
Student[] stuArr=new Student[in.nextInt()];
Admin adminStu=new Admin();
while(true){
System.out.println("---选择你要执行的功能---");
System.out.println("0:添加一个学生");
System.out.println("1:查找一个学生");
System.out.println("2:根据编号更新信息");
System.out.println("3:根据编号删除学生");
System.out.println("4:根据编号输入成绩");
System.out.println("5:根据某门学科排序");
System.out.println("6:根据总分进行排序");
System.out.println("7:退出系统");
//int number =in.nextInt();//判断
String opt=in.next();
if(opt.equals("0")){
System.out.println("---执行添加方法---");
System.out.println("请输入学生的姓名:");
String name=in.next();
System.out.println("请输入学生的年龄:");
int age=in.nextInt();
adminStu.create(name,age,stuArr);
//adminStu.print(stuArr);
}else if(opt.equals("1")){
System.out.println("---执行查找方法---");
System.out.println("请输入学生的编号:");
int num=in.nextInt();
adminStu.select(num, stuArr);
}else if(opt.equals("2")){
System.out.println("---执行更新方法---");
System.out.println("请输入学生的编号:");
int num=in.nextInt();
/*System.out.println("请输入修改的姓名:");
String name=in.next();
System.out.println("请输入修改的年龄:");
int age=in.nextInt();*/
adminStu.update(num, stuArr);
//adminStu.print(stuArr);
}else if(opt.equals("3")){
System.out.println("---执行删除方法---");
System.out.println("请输入学生的编号:");
int num=in.nextInt();
adminStu.delete(num, stuArr);
//adminStu.print(stuArr);
} else if(opt.equals("4")){
System.out.println("---执行输入方法---");
System.out.println("请输入学生的编号:");
int num=in.nextInt();
adminStu.input(num, stuArr);
}else if(opt.equals("5")){
System.out.println("---执行学科排序方法---");
System.out.println("请选择需排序的学科:1.java、2.c_sharp、3.html、4.sql");
int num=in.nextInt();
adminStu.couseSort(num, stuArr);
}else if(opt.equals("6")){
System.out.println("---执行总分排序方法---");
adminStu.sumSort(stuArr);
}else if(opt.equals("7")){
System.out.println("--程序已退出--");
//break;//退出循环
System.exit(0);//退出程序
}
}
}
}
这是我以前编写的一个微型学生管理系统,希望可以给你点思路。休息时间不多就懒。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式