学生管理系统利用arrayList第二次优化
package StuManage;
public class Student {
private String name;//姓名
private String stuNum;//学号
private String gender;//性别
private int age;//年龄
private double score;//分数
public Student(){
}
//构造方法
public Student(String name,String stuNum,String gender,int age,double score){
this.name=name;
this.stuNum=stuNum;
this.gender=gender;
this.age=age;
this.score=score;
}
//设置姓名的方法
public void setName(String name){
this.name=name;
}
//获得名字的方法
public String getName(){
return name;
}
/**
* @return the stuNum
*/
public String getStuNum() {
return stuNum;
}
/**
* @param stuNum the stuNum to set
*/
public void setStuNum(String stuNum) {
this.stuNum = stuNum;
}
/**
* @return the gender
*/
public String getGender() {
return gender;
}
/**
* @param gender the gender to set
*/
public void setGender(String gender) {
this.gender = gender;
}
/**
* @return the age
*/
public int getAge() {
return age;
}
/**
* @param age the age to set
*/
public void setAge(int age) {
this.age = age;
}
/**
* @return the score
*/
public double getScore() {
return score;
}
/**
* @param score the score to set
*/
public void setScore(double score) {
this.score = score;
}
}
package StuManage;
import java.util.ArrayList;
import java.util.LinkedList;
import java.util.Scanner;
/**
* 8、需求:制作一个简单的学生信息管理系统,通过键盘选择操作进行
* 添加学生(学号,姓名,性别,年龄,成绩)的信息,
* 这些信息通过数组存储,同时还可以进行查询某个或全体学生信息
* ,修改学生信息,删除学生信息的操作。(要求有一定的优化,例如对用户输入信息是否符合要求的处理)。
* @author LENOVO
*
*/
public class StuData {
ArrayList<Student> alist=new ArrayList<Student>(1000);
Student stu=new Student();
/**
* 添加一个学生的信息的方法
*/
public void addStu(Student stu){
for(int i=0;i<alist.size();i++){
if(stu.getStuNum().equals(alist.get(i).getStuNum())){
System.out.println("这个学生已经存在,不需要进行添加!\n请您重新选择您要进行的操作~");
return;
}
}
alist.add(stu);
System.out.println("------------------------您已经成功添加了该学生!--------------------------------");
}
/*8
* 删除一个学生
*/
public void delStu(String stuNum){
boolean boo=false;
int mark =0;
for(int i=0;i<alist.size();i++){
mark++;
if(stuNum==alist.get(i).getStuNum()){
boo=true;
break;
}
}
if(boo){
alist.remove(alist.get(mark));
System.out.println("---------------------您已经成功删除该学生!---------------------");
}else{
System.out.println("不存在该学生,不用进行删除操作!");
}
}
/**
* 改正一个学生的信息
*/
public void updataStu(String stuNum){
boolean boo=false;
int mark =0;
for(int i=0;i<alist.size();i++){
mark++;
if(stuNum==alist.get(i).getStuNum()){
boo=true;
break;
}
}
if(boo){
Scanner scanner=new Scanner(System.in);
System.out.println("请您输入您要改正的学生的名字:");
String name2=scanner.next();
stu.setName(name2);
System.out.println("请您输入您要改正的学生的学号:");
String stuNum2 =scanner.next();
stu.setStuNum(stuNum2);
System.out.println("请您输入您要改正的学生的性别:");
String gender2=scanner.next();
stu.setGender(gender2);
System.out.println("请您输入您要改正的学生的年龄:");
int age2=scanner.nextInt();
stu.setAge(age2);
System.out.println("请您输入您要改正的学生的分数:");
double score2=scanner.nextDouble();
stu.setScore(score2);
alist.set(mark ,stu);
System.out.println("---------------------您已经成功改正该学生!---------------------");
}else{
System.out.println("不存在该学生,不用进行改正操作!");
}
}
/**
* 查询学生信息
*/
public void queryStu(String stuNum){
boolean boo=false;
int mark =-1;
for(int i=0;i<alist.size();i++){
mark++;
if(stuNum.equals(alist.get(i).getStuNum())){
boo=true;
break;
}
}
if(boo){
System.out.println("姓名:"+alist.get(mark).getName());
System.out.println("学号:"+alist.get(mark).getStuNum());
System.out.println("性别:"+alist.get(mark).getGender());
System.out.println("年龄:"+alist.get(mark).getAge());
System.out.println("分数:"+alist.get(mark).getName());
System.out.println("---------------------查询结束---------------------");
}else{
System.out.println("不存在该学生!");
}
}
}
package StuManage;
import java.util.ArrayList;
import java.util.LinkedList;
import java.util.Scanner;
/**
* 8、需求:制作一个简单的学生信息管理系统,通过键盘选择操作进行
* 添加学生(学号,姓名,性别,年龄,成绩)的信息,
* 这些信息通过数组存储,同时还可以进行查询某个或全体学生信息
* ,修改学生信息,删除学生信息的操作。(要求有一定的优化,例如对用户输入信息是否符合要求的处理)。
* @author LENOVO
*
*/
public class StuData {
ArrayList<Student> alist=new ArrayList<Student>(1000);
Student stu=new Student();
/**
* 添加一个学生的信息的方法
*/
public void addStu(Student stu){
for(int i=0;i<alist.size();i++){
if(stu.getStuNum().equals(alist.get(i).getStuNum())){
System.out.println("这个学生已经存在,不需要进行添加!\n请您重新选择您要进行的操作~");
return;
}
}
alist.add(stu);
System.out.println("------------------------您已经成功添加了该学生!--------------------------------");
}
/*8
* 删除一个学生
*/
public void delStu(String stuNum){
boolean boo=false;
int mark =0;
for(int i=0;i<alist.size();i++){
mark++;
if(stuNum==alist.get(i).getStuNum()){
boo=true;
break;
}
}
if(boo){
alist.remove(alist.get(mark));
System.out.println("---------------------您已经成功删除该学生!---------------------");
}else{
System.out.println("不存在该学生,不用进行删除操作!");
}
}
/**
* 改正一个学生的信息
*/
public void updataStu(String stuNum){
boolean boo=false;
int mark =0;
for(int i=0;i<alist.size();i++){
mark++;
if(stuNum==alist.get(i).getStuNum()){
boo=true;
break;
}
}
if(boo){
Scanner scanner=new Scanner(System.in);
System.out.println("请您输入您要改正的学生的名字:");
String name2=scanner.next();
stu.setName(name2);
System.out.println("请您输入您要改正的学生的学号:");
String stuNum2 =scanner.next();
stu.setStuNum(stuNum2);
System.out.println("请您输入您要改正的学生的性别:");
String gender2=scanner.next();
stu.setGender(gender2);
System.out.println("请您输入您要改正的学生的年龄:");
int age2=scanner.nextInt();
stu.setAge(age2);
System.out.println("请您输入您要改正的学生的分数:");
double score2=scanner.nextDouble();
stu.setScore(score2);
alist.set(mark ,stu);
System.out.println("---------------------您已经成功改正该学生!---------------------");
}else{
System.out.println("不存在该学生,不用进行改正操作!");
}
}
/**
* 查询学生信息
*/
public void queryStu(String stuNum){
boolean boo=false;
int mark =-1;
for(int i=0;i<alist.size();i++){
mark++;
if(stuNum.equals(alist.get(i).getStuNum())){
boo=true;
break;
}
}
if(boo){
System.out.println("姓名:"+alist.get(mark).getName());
System.out.println("学号:"+alist.get(mark).getStuNum());
System.out.println("性别:"+alist.get(mark).getGender());
System.out.println("年龄:"+alist.get(mark).getAge());
System.out.println("分数:"+alist.get(mark).getName());
System.out.println("---------------------查询结束---------------------");
}else{
System.out.println("不存在该学生!");
}
}
}
package StuManage;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
StuService stus=new StuService();
while(true){
System.out.println("--------------------欢迎进入学生管理系统--------------------------");
System.out.println("1:输入学生信息");
System.out.println("2:修改学生信息");
System.out.println("3:删除学生信息");
System.out.println("4:查询学生信息");
System.out.println("0:退出系统");
System.out.println("-----------请输入选项----------------");
Scanner scanner=new Scanner(System.in);
int a=scanner.nextInt();
if(a==0){
System.out.println("******************退出系统***************************");
System.exit(0);
}
else{
stus.main(a);
}
}
}
}
学生管理系统利用arrayList第二次优化的更多相关文章
- 史上最强学生管理系统之ArrayList版
其实不管是网上或者培训班,都会有学生管理系统的最基础版本,本人也不过是照猫画虎,在某些细节方面进行了一些渲染,使这个最基本的小程序更加人性化和便于利于操作一点,个人愚见,大牛勿喷,欢迎转载(请注明出处 ...
- 学生管理系统——ArrayList集合
此学生管理系统利用了集合ArrayList实现了对学生的增删改查:利用数组中的方法实现分数排序:运用String类的equals实现登录功能的字符串比较. 管理员类: package data; pu ...
- #006 C语言大作业学生管理系统第三天
还差最后两部分 读取文件 恢复删除的学生信息 先学会处理文件的 知识点,再继续跟着视频做这个作业. 应该明天周六能把视频里手把手教的学生管理系统敲完 第二周尽量自己能完成C语言课本最后面那道学生管理系 ...
- java基础: ArrayList集合应用, ArrayList增删改查详解,综合java基础实现学生管理系统,
1.ArrayList 集合和数组的区别 : 共同点:都是存储数据的容器 不同点:数组的容量是固定的,集合的容量是可变的 1.1 -ArrayList的构造方法和添加方法 public ArrayLi ...
- EL&Filter&Listener:EL表达式和JSTL,Servlet规范中的过滤器,Servlet规范中的监听器,观察着设计模式,监听器的使用,综合案例学生管理系统
EL&Filter&Listener-授课 1 EL表达式和JSTL 1.1 EL表达式 1.1.1 EL表达式介绍 *** EL(Expression Language):表达式语言 ...
- JDBC学生管理系统--处理分页显示
分页的思想: 假设一共有104条数据,每页显示10条数据: select * from student limit 0,10; 页数是index,第index页,对应的sql语句是: select * ...
- 学生管理系统开发代码分析笔记:jsp+java bean+servlet技术
1 序言 学习java web的时候很渴望有一份完整的项目给我阅读,而网上的大部分项目拿过来都无法直接用,好不容易找到了一个学生管理系统也是漏洞百出.在此,我将边修改边学习这份代码,并且加上完全的注释 ...
- 第83节:Java中的学生管理系统分页功能
第83节:Java中的学生管理系统分页功能 分页功能一般可以做成两种,一种是物理分页,另一种是逻辑分页.这两种功能是有各自的特点的,物理分页是查询的时候,对数据库进行访问,只是查一页数据就进行返回,其 ...
- Java实现功能简单的学生管理系统(附带源代码)
这几天Java学了点新的知识,打算要用这些知识做一个比较简单的管理系统,实战一下子,代码中的功能简洁,可能不多,但是作为一个练手来了解一个项目是怎么样一点一点思考的还是不错的 一.代码中要实现的功能 ...
随机推荐
- Leetcode题目236.二叉树的最近公共祖先(中等)
题目描述: 给定一个二叉树, 找到该树中两个指定节点的最近公共祖先. 百度百科中最近公共祖先的定义为:“对于有根树 T 的两个结点 p.q,最近公共祖先表示为一个结点 x,满足 x 是 p.q 的祖先 ...
- 状压dp,松鼠从起点出发,拿到所有坚果,然后返回起点,求最短时间。
UVA10944 松鼠从起点出发,拿到所有坚果,然后返回起点,求最短时间. #include<iostream> #include<cstdio> #include<al ...
- 用Python写一个将Python2代码转换成Python3代码的批处理工具
之前写过一篇如何在windows操作系统上给.py文件添加一个快速处理的右键功能的文章:<一键将Python2代码自动转化为Python3>,作用就是为了将Python2的文件升级转换成P ...
- LC 670. Maximum Swap
Given a non-negative integer, you could swap two digits at most once to get the maximum valued numbe ...
- Qt编写自定义控件19-图片背景时钟
前言 图片背景时钟控件,是全套控件(目前共145个)中唯一的几个贴图的控件,这个背景要是不贴图,会画到猝死,必须用美工做好的图贴图作为背景,此控件以前学C#的时候写过,后面在写Qt控件的过程中把他移植 ...
- ssm整合的springmvc.xml的配置
<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.spr ...
- kettle mogodb output详解
以下主要来自官网文档,原文:https://wiki.pentaho.com/display/EAI/MongoDB+Output Configure Connection Tab 1 Host na ...
- Elasticsearch 在CentOs7 环境中开机启动
由于园区的电源不是很稳定,经常会断电,断电之后几十台服务器,启动服务都要人肉启动,真是非常蠢的行为: 开机自启动服务就很有必要,之前设置过,后来没有成功就不管了,断电好几次之后,意识到这个问题就很严重 ...
- .NET开发辅助工具-ANTS Performance Profiler【转载】
https://blog.csdn.net/Eye_cng/article/details/50274109
- SpringMVC,SpringBoot上传文件简洁代码
@RequestMapping("/updateAvatar.html") public String updateHeadUrl(MultipartFile avatar, Mo ...