学生管理系统利用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题目238.除自身以外数组的乘积(中等)
题目描述: 给定长度为 n 的整数数组 nums,其中 n > 1,返回输出数组 output ,其中 output[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积. 示例: ...
- Final——PowerShell Empire
一.介绍 Empire是一款针对Windows平台的.使用PowerShell脚本作为攻击载荷的渗透攻击框架工具,具有从stager生成.提权到渗透维持的一系列功能.Empire实现了无需powers ...
- sass 插值语句的使用
定义了一个 px 转 rem 的函数 @function remP($px) { @return $px / (750 / 15) * 1rem; } 在使用 calc 的时候想要使用函数求值的时候遇 ...
- 【Mybatis】向MySql数据库插入千万记录 单条插入方式,用时 1h16m30s
本例代码下载:https://files.cnblogs.com/files/xiandedanteng/InsertMillionComparison20191012.rar 相对于批量插入,这种方 ...
- [Java]字符串数组 与 字符串链表 之间的相互转化
代码: package com.hy; import java.util.Arrays; import java.util.Collections; import java.util.List; pu ...
- js 操作select和option常见用法
1.获取选中select的value和text,html <select id="mySelect"> <option value="1"&g ...
- Python安装以及简单使用教程
以windows版本举例: 1.首先去Pycharm官网,或者直接输入网址:http://www.jetbrains.com/pycharm/download/#section=windows,下载P ...
- html提交表单,php在后台获取表单内容的方法_例1
html代码: <html> <head> <meta http-equiv="Content-Type" content="t ...
- Svn CleanUp failed–previous operation has not finished
Svn CleanUp遇到错误,解决办法: 下载sqlite3.exe 放至要CleanUp的目录中, 命令行进入sqlite3.exe所在目录, 连接数据库 删除工作队列,(此时再CleanUp提示 ...
- 操作 SQL语句之数据操作语言(DML)详解
一.插入数据(INSERT) MariaDB [(none)]> help insertName: 'INSERT'Description:Syntax:INSERT [LOW_PRIORITY ...