java学生信息管理系统源代码

 更新时间:2018年01月18日 08:36:36   作者:liuyakui  
这篇文章主要为大家详细介绍了java学生信息管理系统源代码,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

本文实例为大家分享了java学生信息管理系统的具体代码,实现学生信息: 增加 int[] a=new int[9] 、删除 、查找、更改,供大家参考,具体内容如下

/*学生信息管理系统,实现学生信息: 
 *增加 int[] a=new int[9] 
 *删除 
 *查找 
 *更改 
 */ 
import java.util.Scanner;//导入java输入流 
import java.lang.*; 
import java.io.*; 
class Student 
{ 
 private static Student[] s=new Student[2]; 
 int n=0; 
 private String name; 
 private int num; 
 private String classAge; 
 
 public void judge()throws IOException 
 { 
 int i; 
 char ch; 
 String str; 
 Scanner In=new Scanner(System.in); 
 if(n==0) 
 { 
  System.out.print("你还没有录入任何学生,是否录入(Y/N):"); 
  str=In.next(); 
  ch=str.charAt(0); 
  while(ch!='Y'&&ch!='y'&&ch!='N'&&ch!='n') 
  { 
  System.out.print("输入有误,请重新输入:"); 
  str=In.next(); 
  ch=str.charAt(0); 
  } 
  if(ch=='Y'||ch=='y') 
  { 
  this.add(); 
  } 
  if(ch=='N'||ch=='n') 
  { 
  this.menu(); 
  } 
 } 
 } 
 
 public void menu()throws IOException//定义菜单函数 
 { 
 int a;//定义switch语句变量 
 Scanner in=new Scanner(System.in);//实例化输入流对象 
 System.out.println("*********学生信息管理系统功能表*********"); 
 System.out.println("*****  1.增加  *****"); 
 System.out.println("*****  2.显示  *****"); 
 System.out.println("*****  3.修改  *****"); 
 System.out.println("*****  4.删除  *****"); 
 System.out.println("*****  5.查看  *****"); 
 System.out.println("*****  0.退出  *****"); 
 System.out.println("****************************************"); 
 System.out.print("请选择(0~5):"); 
 a=in.nextInt(); 
 while(a<0||a>5) 
 { 
  System.out.print("输入超出范围,请重新输入:"); 
  a=in.nextInt(); 
 } 
 switch(a) 
 { 
  case 1:this.add();break; 
  case 2:this.show();break; 
  case 3:this.modif();break; 
  case 4:this.delete();break; 
  case 5:this.look();break; 
  case 0:System.exit(0);break; 
 }  
 } 
 
 public void add()throws IOException//定义增加函数 
 { 
 String str,str1,str2; 
 int i,num1,t=1; 
 char ch,ch1; 
 FileWriter fw=new FileWriter("F://javaFile//student.txt",true); 
 fw.write("  录入的学生信息列表\r\n\r\n学号 姓名 班级\r\n"); 
 Scanner In=new Scanner(System.in); 
 while(t==1) 
 { 
  System.out.print("请输入学生学号:"); 
  num1=In.nextInt(); 
  for(i=0;i<n;i++) 
  { 
  while(s[i].num==num1) 
  { 
   System.out.println("已存在此学号,请重新输入"); 
   System.out.print("请输入学号:"); 
   num1=In.nextInt(); 
  } 
  } 
  s[n].num=num1; 
  str2=String.valueOf(num1); 
  fw.write(str2+" "); 
  System.out.println(); 
  System.out.print("请输入学生姓名:"); 
  s[n].name=In.next(); 
  fw.write(s[n].name+" "); 
  System.out.println(); 
  System.out.print("请输入学生班级:"); 
  s[n].classAge=In.next(); 
  fw.write(s[n].classAge+"\r\n"); 
  ++n; 
  fw.close(); 
  System.out.println(); 
  System.out.print("是否继续添加(Y/N)"); 
  str=In.next(); 
  ch=str.charAt(0); 
  while(ch!='N'&&ch!='n'&&ch!='Y'&&ch!='y') 
  { 
  System.out.print("输入有误,请重新输入:"); 
  str=In.next(); 
  ch=str.charAt(0); 
  } 
  if(ch=='N'||ch=='n') 
  { 
  break; 
  } 
 } 
 System.out.println(); 
 System.out.print("是否返回主菜单(Y/N)"); 
 str1=In.next(); 
 ch1=str1.charAt(0); 
 while(ch1!='Y'&&ch1!='y'&&ch1!='N'&&ch1!='n') 
 { 
  System.out.print("输入有误,请重新输入:"); 
  str1=In.next(); 
  ch1=str1.charAt(0); 
 } 
 if(ch1=='Y'||ch1=='y') 
 { 
  this.menu(); 
 } 
 if(ch1=='N'||ch1=='n') 
 { 
  System.out.println("正在退出...谢谢使用!"); 
  System.exit(0); 
 } 
 } 
 
 public void show()throws IOException 
 { 
 int i; 
 this.judge(); 
 System.out.println("本次操作共录入"+n+"位学生!"); 
 System.out.println("你录入的学生信息如下:"); 
 System.out.println(); 
 System.out.println("学号\t\t姓名\t班级"); 
 for(i=0;i<n;i++)    
 { 
  System.out.println(s[i].num+" "+s[i].name+" "+s[i].classAge); 
 } 
 System.out.println("系统返回主菜单!"); 
 this.menu(); 
 } 
 
 public void delete()throws IOException//删除信息功能实现 注:本功能暂时不具备可扩展性 
 { 
 this.judge(); 
 int j=0,t=0,k=0,num1; 
 char ch; 
 String str; 
 Scanner pin=new Scanner(System.in); 
 System.out.print("请输入要删除的学号:"); 
 num1=pin.nextInt(); 
 for(j=0;j<n;j++) 
 { 
  if(s[j].num==num1) 
  { 
  k=1; 
  t=j; 
  } 
 } 
 if(k==0) 
 { 
  System.out.println("对不起!你要删除的学号不存在!"); 
  System.out.println("系统将返回主菜单!"); 
  this.menu(); 
 } 
 if(k==1) 
 { 
  System.out.println("你要删除的学生信息如下:");//打印管理员要删除的学生信息 
  System.out.println("学号\t姓名\t班级");//本功能暂时不备扩展性 
  System.out.println(s[t].num+" "+s[t].name+" "+s[t].classAge); 
  System.out.println(); 
  System.out.print("你确定要删除(Y/N):"); 
  str=pin.next(); 
  ch=str.charAt(0); 
  while(ch!='Y'&&ch!='y'&&ch!='N'&&ch!='n') 
  { 
  System.out.print("输入有误,请重新输入:"); 
  str=pin.next(); 
  ch=str.charAt(0); 
  } 
  if(ch=='N'||ch=='n') 
  { 
  System.out.println(); 
  System.out.println("系统返回主菜单!"); 
  this.menu(); 
  } 
  if(ch=='Y'||ch=='y') 
  { 
  for(j=t;j<n-1;j++) 
  { 
   s[j]=s[j+1]; 
  } 
  n--; 
  System.out.println("数据成功删除!"); 
  System.out.println("系统返回主菜单!"); 
  this.menu(); 
  } 
 } 
 } 
 
 public void look()throws IOException 
 { 
 FileReader fr=new FileReader("F://javaFile//student.txt"); 
 int a; 
 while((a=fr.read())!=-1) 
 { 
  System.out.print((char)a); 
 } 
 fr.close(); 
 System.out.println("系统返回主菜单!"); 
 System.out.println(); 
 this.menu(); 
 } 
 
 public void modif()throws IOException 
 { 
 this.judge(); 
 int j=0,t=0,k=0,num2,num3,moi,c=1; 
 char ch; 
 String str,str1,str2; 
 Scanner pin=new Scanner(System.in); 
 System.out.print("请输入要修改的学号:"); 
 num2=pin.nextInt(); 
 for(j=0;j<n;j++) 
 { 
  if(s[j].num==num2) 
  { 
  k=1; 
  t=j; 
  } 
 } 
 if(k==0) 
 { 
  System.out.println("对不起!你要修改的学号不存在!"); 
  System.out.println("系统将返回主菜单!"); 
  this.menu(); 
 } 
 if(k==1) 
 { 
  System.out.println("你要修改的学生信息如下:");//打印管理员要删除的学生信息 
  System.out.println("学号\t姓名\t班级");//本功能暂时不备扩展性 
  System.out.println(s[t].num+" "+s[t].name+" "+s[t].classAge); 
  System.out.println(); 
  System.out.print("你确定要修改(Y/N):"); 
  str=pin.next(); 
  ch=str.charAt(0); 
  while(ch!='Y'&&ch!='y'&&ch!='N'&&ch!='n') 
  { 
  System.out.print("输入有误,请重新输入:"); 
  str=pin.next(); 
  ch=str.charAt(0); 
  } 
  if(ch=='N'||ch=='n') 
  { 
  System.out.println(); 
  System.out.println("系统返回主菜单!"); 
  this.menu(); 
  } 
  while(c==1) 
  { 
  if(ch=='Y'||ch=='y') 
  { 
   System.out.println("****************************************"); 
   System.out.println("*****  1.修改学号  *****"); 
   System.out.println("*****  2.修改班级  *****"); 
   System.out.println("*****  3.修改姓名  *****"); 
   System.out.println("****************************************"); 
   System.out.print("请选择:"); 
   moi=pin.nextInt(); 
   switch(moi) 
   { 
   case 1:System.out.print("请输入新的学号:");num3=pin.nextInt();s[t].num=num3;break; 
   case 2:System.out.print("请输入新的班级:");str1=pin.next();s[t].classAge=str1;break; 
   case 3:System.out.print("请输入新的姓名:");str2=pin.next();s[t].name=str2;break; 
   } 
   System.out.println("数据已成功修改!"); 
  } 
  System.out.print("是否继续修改(Y/N)"); 
  str=pin.next(); 
  ch=str.charAt(0); 
  System.out.println(); 
  while(ch!='Y'&&ch!='y'&&ch!='N'&&ch!='n') 
  { 
   System.out.print("输入有误,请重新输入:"); 
   str=pin.next(); 
   ch=str.charAt(0); 
  } 
  if(ch=='N'||ch=='n') 
  { 
   break; 
  } 
  } 
 } 
 System.out.println(); 
 System.out.println("系统返回主菜单!"); 
 this.menu(); 
 } 
 
 public static void main(String[] args)throws IOException 
 { 
 Student stu=new Student(); 
 for(int i=0;i<2;i++) 
 { 
  s[i]=new Student(); 
 } 
 stu.menu(); 
 } 
} 

更多学习资料请关注专题《管理系统开发》。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • RabbitMq消息防丢失功能实现方式讲解

    RabbitMq消息防丢失功能实现方式讲解

    这篇文章主要介绍了RabbitMq消息防丢失功能实现,RabbitMQ中,消息丢失可以简单的分为两种:客户端丢失和服务端丢失。针对这两种消息丢失,RabbitMQ都给出了相应的解决方案
    2023-01-01
  • java面向对象之人机猜拳小游戏

    java面向对象之人机猜拳小游戏

    这篇文章主要为大家详细介绍了java面向对象之人机猜拳小游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-12-12
  • SpringBoot创建动态定时任务的几种方式小结

    SpringBoot创建动态定时任务的几种方式小结

    SpringBoot提供了多种实现定时任务的方式,包括使用@Scheduled注解、SchedulingConfigurer接口、TaskScheduler接口和Quartz框架,@Scheduled适合简单的定时任务,文中通过代码示例介绍的非常详细,需要的朋友可以参考下
    2024-10-10
  • spring声明式事务@Transactional底层工作原理

    spring声明式事务@Transactional底层工作原理

    这篇文章主要为大家介绍分析spring声明式事务@Transactional底层工作原理,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步早日升职加薪
    2022-02-02
  • java创建以任意图片为背景的窗口

    java创建以任意图片为背景的窗口

    这篇文章主要为大家详细介绍了java创建以任意图片为背景的窗口,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-12-12
  • SpringBoot使用Sa-Token实现账号封禁、分类封禁、阶梯封禁的示例代码

    SpringBoot使用Sa-Token实现账号封禁、分类封禁、阶梯封禁的示例代码

    本文主要介绍了SpringBoot使用Sa-Token实现账号封禁、分类封禁、阶梯封禁的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-07-07
  • @RequestParam 参数偶尔丢失的解决

    @RequestParam 参数偶尔丢失的解决

    这篇文章主要介绍了@RequestParam 参数偶尔丢失的解决,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-10-10
  • IDEA报java: java.lang.OutOfMemoryError: Java heap space错误解决办法

    IDEA报java: java.lang.OutOfMemoryError: Java heap space错误

    这篇文章主要给大家介绍了关于IDEA报java: java.lang.OutOfMemoryError: Java heap space错误的解决办法,文中将解决的办法介绍的非常详细,需要的朋友可以参考下
    2024-01-01
  • 如何用java实现分页查询

    如何用java实现分页查询

    这篇文章主要介绍了如何用java实现分页查询,文中讲解非常细致,代码帮助大家更好的理解和学习,感兴趣的朋友可以了解下
    2020-06-06
  • 基于synchronized修饰静态和非静态方法

    基于synchronized修饰静态和非静态方法

    这篇文章主要介绍了基于synchronized修饰静态和非静态方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-04-04

最新评论