Java_学生信息管理系统——数组版——初次编写

Java练习学生信息管理系统,第一次写,对于类要怎么弄,函数要干嘛,main方法静态不能用非静态的等等很是烦恼了好大一阵。

幸好ArrayList做参数时,是引用传递。。。C++用&就可以引用传递,Java呢?

 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.util.ArrayList;
  4 public class StudentManager
  5 {
  6     public static void main(String[] args)
  7     {
  8         Scanner input=new Scanner(System.in);
  9         ArrayList<Student> stu=new ArrayList<Student>();
 10         int select=1;
 11         for(;;)
 12         {
 13             face();
 14             do
 15             {
 16             select=input.nextInt();
 17             }while(select<1||select>5);
 18             switch(select)
 19             {
 20                 case 1:showStudent(stu);break;
 21                 case 2:addStudent(stu);break;
 22                 case 3:deleteStudent(stu);break;
 23                 case 4:updateStudent(stu);break;
 24                 case 5:selectStudent(stu);break;
 25             }
 26         }
 27     }
 28     private static void addStudent(ArrayList<Student> stu)
 29     {
 30         Student stu0=new Student();
 31         String a, b,f;
 32         int c;
 33         boolean d=false,j=true;
 34         Double e;
 35
 36         Scanner input=new Scanner(System.in);
 37         System.out.println("请依次输入:学号、姓名、年龄、性别、成绩");
 38         a=input.next();
 39         b=input.next();
 40         c=input.nextInt();
 41         f=input.next();
 42         e=input.nextDouble();
 43         if(stu.size()!=0)
 44         {
 45             for(int i=0;i<stu.size();i++)
 46             {
 47                 if(stu.get(i).get_stunumber().equals(a))
 48                 {
 49                     j=false;
 50                 }
 51             }
 52         }
 53         if(j==true)
 54         {
 55             if(f.equals("男"))
 56             {
 57                 d=false;
 58             }
 59             else
 60             {
 61                 d=true;
 62             }
 63             stu0.set_stunumber(a);
 64             stu0.set_name(b);
 65             stu0.set_age(c);
 66             stu0.set_sex(d);
 67             stu0.set_score(e);
 68             stu.add(stu0);
 69         }
 70         else
 71         {
 72             System.out.println("学号重复!该学生已存在!");
 73         }
 74     }
 75     private static void deleteStudent(ArrayList<Student> stu)
 76     {
 77         boolean f=false;
 78         String str;
 79         System.out.println("请输入要删除的学生的学号:");
 80         Scanner input=new Scanner(System.in);
 81         str=input.next();
 82         for(int i=0;i<stu.size();i++)
 83         {
 84             if(stu.get(i).get_stunumber().equals(str))
 85             {
 86                 f=true;
 87                 stu.remove(i);
 88                 break;
 89             }
 90         }
 91         if(f==false)
 92         {
 93             System.out.println("该学生不存在!");
 94         }
 95     }
 96     private static void updateStudent(ArrayList<Student> stu)
 97     {
 98         Student stu0;
 99         String a, b,f;
100         int c,num=0;
101         boolean d,j=true;
102         Double e;
103         Scanner input=new Scanner(System.in);
104         System.out.println("请输入待修改学生学号:");
105         a=input.next();
106         if(stu.size()!=0)
107         {
108             for(int i=0;i<stu.size();i++)
109             {
110                 if(stu.get(i).get_stunumber().equals(a))
111                 {
112                     j=false;
113                 }
114             }
115         }
116         if(j==true)
117         {
118             System.out.println("该学生不存在!");
119         }
120         else
121         {
122             for(int i=0;i<stu.size();i++)
123             {
124                 if(stu.get(i).get_stunumber().equals(a))
125                 {
126                     num=i;
127                     break;
128                 }
129             }
130             System.out.println("请输入新的信息:");
131             a=input.next();
132             b=input.next();
133             c=input.nextInt();
134             f=input.next();
135             e=input.nextDouble();
136             if(j==true)
137             {
138                 if(f=="男")
139             {
140                 d=false;
141             }
142             else
143             {
144                 d=true;
145             }
146
147             stu.get(num).set_stunumber(a);
148             stu.get(num).set_name(b);
149             stu.get(num).set_age(c);
150             stu.get(num).set_sex(d);
151             stu.get(num).set_score(e);
152             }
153         }
154     }
155     private static void selectStudent(ArrayList<Student> stu)
156     {
157         boolean j=true;//默认无重复
158         int num=0;
159         String s;
160         Scanner input=new Scanner(System.in);
161         String str;
162         System.out.println("请输入学号:");
163         str=input.next();
164         if(stu.size()!=0)
165         {
166             for(int i=0;i<stu.size();i++)
167             {
168                 if(stu.get(i).get_stunumber().equals(str))
169                 {
170                     j=false;
171                 }
172             }
173         }
174         if(j==true)
175         {
176             System.out.println("该学生不存在!");
177         }
178         else
179         {
180             for(int i=0;i<stu.size();i++)
181             {
182                 if(stu.get(i).get_stunumber().equals(str))
183                 {
184                     num=i;
185                     break;
186                 }
187             }
188             if(stu.get(num).get_sex()==false)
189             {
190                 s="男";
191             }
192             else
193             {
194                 s="女";
195             }
196             System.out.print("学号: ");
197             System.out.print(stu.get(num).get_stunumber());
198             System.out.print("  姓名: ");
199             System.out.print(stu.get(num).get_name());
200             System.out.print("  年龄: ");
201             System.out.print(stu.get(num).get_age());
202             System.out.print("  性别: ");
203             System.out.print(s);
204             System.out.print("  成绩: ");
205             System.out.println(stu.get(num).get_score());
206         }
207     }
208     private static void showStudent(ArrayList<Student> stu)
209     {
210         String s;
211         for(int i=0;i<stu.size();i++)
212         {
213             if(stu.get(i).get_sex()==false)
214             {
215                 s="男";
216             }
217             else
218             {
219                 s="女";
220             }
221             System.out.print("("+(i+1)+")  ");
222             System.out.print("学号: ");
223             System.out.print(stu.get(i).get_stunumber());
224             System.out.print("  姓名: ");
225             System.out.print(stu.get(i).get_name());
226             System.out.print("  年龄: ");
227             System.out.print(stu.get(i).get_age());
228             System.out.print("  性别: ");
229             System.out.print(s);
230             System.out.print("  成绩: ");
231             System.out.println(stu.get(i).get_score());
232         }
233     }
234     private static void face()
235     {
236         System.out.println("***************************************************");
237         System.out.println("    石家庄铁道大学信息科学与技术学院");
238         System.out.println("        学生信息管理系统");
239         System.out.println("***************************************************");
240         System.out.println("        1.遍历输出学生信息");
241         System.out.println("        2.新学生信息录入");
242         System.out.println("        3.删除学生信息");
243         System.out.println("        4.修改学生信息");
244         System.out.println("        5.查询学生信息");
245         System.out.println("***************************************************");
246     }
247 }

原文地址:https://www.cnblogs.com/26never/p/9576522.html

时间: 2024-08-02 04:24:13

Java_学生信息管理系统——数组版——初次编写的相关文章

学生信息管理系统JAVASE版--1.1.1

现在终于可以写出实用一点的程序了.虽然这个程序的功能非常之简陋,而且还有BUG.不过最起码已经可以使用了. 功能预览和下一步的目标 程序主界面 查询功能: 目前只做了一个表的增.删.改.查.下一步应该就是把功能完善,比如加入错误处理,比如加入成绩部分.完成一个班级内的学生信息管理的功能,应该具有学生的基本信息查询,成绩管理这两个功能 不过有一个问题就是,在表格更新这一部分,每更新一次,就要创建一个tabliModel对象,感觉可以改进.再有就是MVC模式,其实也就接触设计模式.还有就是整成那种可

学生信息管理系统-初级版

main.c 文件 #include"func.h" int main(int argc,char *argv[]){ char a[20]; char b; int i,num=0; char c[500]; char key[20]; pUSR_ACCOUNT phead_account=NULL; pUSR_ACCOUNT ptail_account=NULL; pUSR_INFOR phead_infor=NULL; pUSR_INFOR ptail_infor=NULL; p

学生信息管理系统JAVASE版--第0阶段之CMD版--0.1.3 版

这个程序是一个有进步也有失败的程序 比如没有做好多表查询,也没有做好主类中的逻辑处理.总之又要去复习了. 改进: 1.使用第三工具dbutils对数据库操作部分进行了封装 2.把URL等变量改为属性文件的形式 代码: MYSQL: student表: CREATE TABLE student( stuId INT PRIMARY KEY AUTO_INCREMENT, -- 学生编号 stuName VARCHAR(20) NOT NULL DEFAULT '', -- 学生姓名 stuAge

2018.4.2 学生信息管理系统(集合版) 完整篇

学生信息管理系统(集合版) Student.java package com.lanqiao.demo; /** * 学生类 * * @author qichunlin * */ public class Student { private String name;// 姓名 private double[] score = new double[3];// 三门课程成绩 // get set public String getName() { return name; } public voi

C语言编写学生信息管理系统

学完C语言,自己想着编写一个学生信息管理系统,既可以巩固C语言知识,也能体验怎么合理地设计和实现一个项目. 设计比较简陋,希望各位大佬多多批评,多多指教! 这个系统最重要的便是主要功能框架,在主函数中用switch()多分支选择结构实现. 我是链表实现,代码如下: 1 #include<stdio.h> 2 #include<stdlib.h> 3 #include<string.h> 4 #include<malloc.h> 5 #include<s

微型学生信息管理系统的建立

设计需求:制作一个简单的学生信息管理系统,通过键盘选择操作进行添加学生(学号,姓名,性别,年龄,成绩)的信息,这些信息通过数组存储,同时还可以进行查询某个或全体学生信息,修改学生信息,删除学生信息的操作.(要求有一定的优化,例如对用户输入信息是否符合要求的处理). 面对这个问题,第一想到的是该对象是Student,故创建一个Student类 package com.shxt.java.text1; //新建一个Student类public class Student { //定义学生的属性,姓名

学生信息管理系统java测试报告

package studentinformation; /**姓名 胡海靖 * 学号 20183609 * 班级 信1805-2 */ class ScoreInformation { private String stunumber;//学号 private String name;//姓名 private double mathematicsscore;//高等数学成绩 private double englishiscore;//大学英语成绩 private double networks

学生信息管理系统修改

北京工业大学耿丹学院 c语言设计课程报告   课程设计名称:高级语言程序设计 专业班级:计算机科学与技术1 姓名:吴双 学号:150809201   2016年5月10日 一 对c语言指针链表的体会 ------------------------ 二 修改学生信息管理系统 ------------------------ 三 体会 ------------------------ 一 对c语言指针链表的体会 1.指针 简单来说,指针是一个存储计算机内存地址的变量. 用 int *ptr 这种形

用基本数据结构修改后的学生信息管理系统(增删改查)

package com.xt.student.system; //创建学生类存放信息 public class Student {//声明变量private String stuNo; private String stuName; private String gender; private int age; private int score; //对变量进行封装 public String getStuNo() {return stuNo;} public void setStuNo(St