Java_学生信息管理系统——数组版——尝试将main函数单独放了一个类,并加了文件...
开学后学习Java文件操作,并为了研究main究竟放在那里的问题,又写了一遍学生信息管理系统。这次放弃用Array List,就用了普通的一维数组。顺便整理上来。
1 package Student; 2 3 public class Student 4 { 5 private String stunumber; 6 private String name; 7 private int age; 8 private boolean sex;//man=false,woman=true 9 private Double score; 10 Student () 11 { 12 stunumber=""; 13 name=""; 14 age=0; 15 sex=false; 16 score=0.0; 17 } 18 Student (String a,String b,int c,boolean d,Double e) 19 { 20 stunumber=a; 21 name=b; 22 age=c; 23 sex=d; 24 score=e; 25 } 26 public void set_stunumber(String str) 27 { 28 stunumber=str; 29 } 30 public void set_name(String str) 31 { 32 name=str; 33 } 34 public void set_age(int n) 35 { 36 age=n; 37 } 38 public void set_sex(boolean bool) 39 { 40 sex=bool; 41 } 42 public void set_score(Double n) 43 { 44 score=n; 45 } 46 public String get_stunumber() 47 { 48 return stunumber; 49 } 50 public String get_name() 51 { 52 return name; 53 } 54 public int get_age() 55 { 56 return age; 57 } 58 public boolean get_sex() 59 { 60 return sex; 61 } 62 public Double get_score() 63 { 64 return score; 65 } 66 67 }
1 package Student; 2 import java.util.Scanner; 3 import java.io.*; 4 public class StudentManager 5 { 6 private Student stu[]=new Student[100]; 7 private int number; 8 StudentManager() 9 { 10 number=0; 11 12 } 13 public void showStudent() 14 { 15 String s; 16 for(int i=0;i<number;i++) 17 { 18 if(stu[i].get_sex()==true) 19 { 20 s="女"; 21 } 22 else 23 { 24 s="男"; 25 } 26 System.out.print("("+(i+1)+")\t"); 27 System.out.print("学号: "); 28 System.out.print(stu[i].get_stunumber()); 29 System.out.print(" 姓名: "); 30 System.out.print(stu[i].get_name()); 31 System.out.print(" 年龄: "); 32 System.out.print(stu[i].get_age()); 33 System.out.print(" 性别: "); 34 System.out.print(s); 35 System.out.print(" 成绩: "); 36 System.out.println(stu[i].get_score()); 37 } 38 } 39 public void addStudent() 40 { 41 Scanner input=new Scanner(System.in); 42 String a, b,f; 43 int c; 44 boolean d=false; 45 Double e; 46 int f1=1; 47 do 48 { 49 System.out.println("请依次输入学号 姓名 年龄 性别 成绩"); 50 a=input.next(); 51 b=input.next(); 52 c=input.nextInt(); 53 f=input.next(); 54 e=input.nextDouble(); 55 if(f.equals("女")) 56 { 57 d=true; 58 } 59 else 60 { 61 d=false; 62 } 63 if(judgeSame(a)==true) 64 { 65 stu[number]=new Student(); 66 stu[number].set_stunumber(a); 67 stu[number].set_name(b); 68 stu[number].set_age(c); 69 stu[number].set_sex(d); 70 stu[number].set_score(e); 71 number++; 72 System.out.println("是否继续?是 1 否 0"); 73 f1=input.nextInt(); 74 } 75 else 76 { 77 System.out.println("学号重复!该学生已存在!"); 78 f1=1; 79 } 80 }while(f1==1); 81 } 82 private boolean judgeSame(String s) 83 { 84 for(int i=0;i<number;i++) 85 { 86 if(s.equals(stu[i].get_stunumber())==true) 87 { 88 return false; 89 } 90 } 91 return true; 92 } 93 public void deleteStudent() 94 { 95 Scanner input=new Scanner(System.in); 96 String s; 97 System.out.println("请输入要删除的学生的学号:"); 98 s=input.next(); 99 boolean f=false; 100 for(int i=0;i<number;i++) 101 { 102 if(s.equals(stu[i].get_stunumber())) 103 { 104 f=true; 105 number--; 106 for(int t=i;t<number;t++) 107 { 108 stu[t]=stu[t+1]; 109 } 110 } 111 } 112 if(f==false) 113 { 114 System.out.println("删除失败!该学生不存在"); 115 } 116 } 117 public void selectStudent() 118 { 119 Scanner input=new Scanner(System.in); 120 String s; 121 System.out.println("请输入要查询的学生的学号:"); 122 s=input.next(); 123 boolean flag=false; 124 for(int i=0;i<number;i++) 125 { 126 if(s.equals(stu[i].get_stunumber())) 127 { 128 flag=true; 129 if(stu[i].get_sex()==true) 130 { 131 s="女"; 132 } 133 else 134 { 135 s="男"; 136 } 137 System.out.print("学号: "); 138 System.out.print(stu[i].get_stunumber()); 139 System.out.print(" 姓名: "); 140 System.out.print(stu[i].get_name()); 141 System.out.print(" 年龄: "); 142 System.out.print(stu[i].get_age()); 143 System.out.print(" 性别: "); 144 System.out.print(s); 145 System.out.print(" 成绩: "); 146 System.out.println(stu[i].get_score()); 147 } 148 } 149 if(flag==false) 150 { 151 System.out.println("该学生不存在!"); 152 } 153 } 154 public void updateStudent() 155 { 156 Scanner input=new Scanner(System.in); 157 String s; 158 String a, b,f; 159 int c; 160 boolean d=false; 161 Double e; 162 System.out.println("请输入要修改的学生的学号:"); 163 s=input.next(); 164 boolean flag=false; 165 for(int i=0;i<number;i++) 166 { 167 if(s.equals(stu[i].get_stunumber())) 168 { 169 flag=true; 170 System.out.println("请依次输入学号 姓名 年龄 性别 成绩"); 171 a=input.next(); 172 b=input.next(); 173 c=input.nextInt(); 174 f=input.next(); 175 e=input.nextDouble(); 176 if(f.equals("女")) 177 { 178 d=true; 179 } 180 else 181 { 182 d=false; 183 } 184 if(judgeSame(a)==true) 185 { 186 stu[i]=new Student(); 187 stu[i].set_stunumber(a); 188 stu[i].set_name(b); 189 stu[i].set_age(c); 190 stu[i].set_sex(d); 191 stu[i].set_score(e); 192 } 193 else 194 { 195 System.out.println("修改失败!学号重复!该学生已存在!"); 196 } 197 } 198 } 199 if(flag==false) 200 { 201 System.out.println("修改失败!该学生不存在!"); 202 } 203 } 204 public void infile() 205 { 206 String s; 207 number=0; 208 int i=0; 209 boolean d=false; 210 try 211 { 212 Scanner input=new Scanner(System.in); 213 System.out.println("请输入文件路径:"); 214 s=input.next(); 215 FileReader fr=new FileReader(s); 216 Scanner r=new Scanner(fr); 217 while(r.hasNext()) 218 { 219 stu[i]=new Student(); 220 stu[i].set_stunumber(r.next()); 221 stu[i].set_name(r.next()); 222 stu[i].set_age(r.nextInt()); 223 stu[i].set_sex(r.nextBoolean()); 224 stu[i].set_score(r.nextDouble()); 225 i++; 226 } 227 228 fr.close(); 229 r.close(); 230 } 231 catch(IOException e) 232 { 233 System.out.println("读取错误!"); 234 e.printStackTrace(); 235 236 } 237 number=i; 238 } 239 public void outfile() 240 { 241 String s; 242 Scanner input=new Scanner(System.in); 243 System.out.println("请输入文件路径:"); 244 s=input.next(); 245 File f=new File(s); 246 try 247 { 248 FileWriter fw=new FileWriter(f); 249 PrintWriter pw=new PrintWriter(fw); 250 251 for(int i=0;i<number;i++) 252 { 253 pw.print(stu[i].get_stunumber()+" "); 254 pw.print(stu[i].get_name()+" "); 255 pw.print(stu[i].get_age()+" "); 256 pw.print(stu[i].get_sex()+" "); 257 pw.println(stu[i].get_score()); 258 } 259 fw.flush(); 260 fw.close(); 261 pw.close(); 262 } 263 catch(IOException e) 264 { 265 System.out.println("输出错误!"); 266 e.printStackTrace(); 267 } 268 } 269 }
1 package Student; 2 import java.util.Scanner; 3 public class Main 4 { 5 6 public static void main(String[] args) 7 { 8 Scanner input=new Scanner(System.in); 9 StudentManager m=new StudentManager(); 10 int select=1; 11 for(;;) 12 { 13 face(); 14 do 15 { 16 select=input.nextInt(); 17 }while(select<1||select>7); 18 switch(select) 19 { 20 case 1:m.showStudent();break; 21 case 2:m.addStudent();break; 22 case 3:m.deleteStudent();break; 23 case 4:m.updateStudent();break; 24 case 5:m.selectStudent();break; 25 case 6:m.infile();break; 26 case 7:m.outfile();break; 27 } 28 } 29 } 30 private static void face() 31 { 32 System.out.println("***************************************************"); 33 System.out.println(" 石家庄铁道大学信息科学与技术学院"); 34 System.out.println(" 学生信息管理系统"); 35 System.out.println("***************************************************"); 36 System.out.println(" 1.遍历输出学生信息"); 37 System.out.println(" 2.新学生信息录入"); 38 System.out.println(" 3.删除学生信息"); 39 System.out.println(" 4.修改学生信息"); 40 System.out.println(" 5.查询学生信息"); 41 System.out.println(" 6.导入文件"); 42 System.out.println(" 7.导出文件"); 43 System.out.println("***************************************************"); 44 } 45 }
转载于:https://www.cnblogs.com/CCRNRT/p/9694588.html
Java_学生信息管理系统——数组版——尝试将main函数单独放了一个类,并加了文件...相关推荐
- 通过学生信息管理系统(数组版)学习C语言
我的知识星球<C语言解惑课堂>的[第159篇]到[167篇]是学生信息管理系统(数组版)的一个C语言源码实现,[第340.341.342.343.344篇]详解了源码中的C程序知识点,需要 ...
- 学生管理系统html js,学生信息管理系统JS版(Eclipse).docx
学生信息管理系统JS版(Eclipse) 学生信息管理系统JSP版(Eclipse) 新建new->Dynamic Web Project->名字为StudentJSP. 准备工作 编写J ...
- Java 学生信息管理系统 (mysql版)
引言:如果需要定制类似的图形界面版的Java 管理系统,比如控制台版的,Java web版的,ssm版,开发工具为idea和eclipse.myEclipse的,提供远程服务,需要源码,或者需要项目实 ...
- 学生信息管理系统Java版(信息自动生成)
文章目录 前言 一.学生信息管理系统内容要求 二.实现思路 1.构造学生对象 2.构造工具类 3.实现控制台交互 三.代码实现 四.效果展示 总结 前言 本案例作为对Java基础学习后的练习,掌握集合 ...
- C语言学生信息管理系统第二版(附带密码登录模式)
这几天准备复习一下学习的C语言,进行一门语言最好的复习方式我认为就是用这门语言做一个作品出来,这样可能方方面面的知识都有可能用到,于是我花了几天写了一个学生信息管理系统,这是第二版操作系统,我又增加了 ...
- 学生信息管理系统简易版(文件读写操作)
功能模块 具体功能如下: 添加学生信息 修改学生信息(按学号) 排序(分别按总分升序.降序.以及按姓名升序) 查找学生(按学号) 删除学生 查看所有学生信息 数据结构体设计 本表设计一个学生信息的结构 ...
- 基于java eclipse+jsp+mysql+servlet+Spring的学生信息管理系统基础版
项目背景 学生信息档案的管理对于学校的管理者来说至关重要,学生信息是高等学校非常重要的一项数据资源,是一个教育单位不可缺少一部分.特别是近几年来,国家政策的调整,我国高等院校大规模的扩招,给高等院校的 ...
- Java_学生信息管理系统-后台数据库设计
功能: 为学生信息管理系统后台数据库进行设计,结果如下图: 图1.数据库数据表 如图2.数据库数据表之间关系
- 学生信息管理系统——python版(附流程图)
声明 本篇代码对新手十分友好.我大一的期末考试作业,今天分享出来.当时写的时候也是一个新手,现在也不想再去修改了(一是太懒,二还是懒),所以有很多地方可能不足,但是运行完全没问题.我用的是列表加循环这 ...
- 上海交通大学出版社python教材答案学生信息管理系统_学生信息管理系统(最终版)...
<学生信息管理系统.doc>由会员分享,可免费在线阅读全文,更多与<学生信息管理系统(最终版)>相关文档资源请在帮帮文库(www.woc88.com)数亿文档库存里搜索. 1. ...
最新文章
- Nginx配置文件nginx.conf中文详解
- 使用 diskpart 实现无损数据回收空间再分区
- Pycharm上Django的使用 Day8
- 二叉树的锯齿形层次遍历
- c语言自动拷贝u盘文件,写了一个偷偷拷贝老师U盘所有文件的程序……蛋疼……………...
- 计算机网络二级考试类型,二级计算机考试大纲
- Apicloud_(问题)P54提示错误:Uncaught SyntaxError: Unexpected token ) at main.html : 117
- Java 中的接口有什么作用?为什么不直接用类?
- 阿里巴巴:如何从优秀员工,晋升为合格管理者?
- 买电梯房几楼才是最好 几个最差楼层千万不能选
- 暗组2007 专业版 V6.1 800MB超大容量!迅雷 BT下载
- 公众号下面显示一排服务器,新技能get 微信公众号文章花式排版大法
- python+selenium自动化软件测试(第1章)
- 华为发布八核处理器Kirin 920
- python中的tenacity 的简单使用
- 什么是开环控制,闭环控制?它们的根本区别是什么
- UninstallPKG for Mac(PKG文件卸载)
- QtScrcpy手机投屏电脑利器连接Android设备
- ​LeetCode刷题实战488:祖玛游戏
- 充电宝不能托运只能随身带