需求:
采用控制台的方式去实习学生管理系统
分析:
基础小项目练习,没啥分析,我主要是运用了ArrayList能因为输入元素动态改变自己长度的特点来构造的,
先自己不看答案手打了一个,然后改了个小时。。。。。。
控制台实现,转游览器,数据库都没用,后面完成了再移植
功能:
初始菜单,
然后
增删查改功能
一、
添加主界面,几个输出语句就ok。然后把键盘录入的选择加进去
package xiangmu.studentSystem;
import javax.swing.*;
import java.util.Scanner;
public class text {
public static void main(String[] args) {
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("请选择你要干嘛");
Scanner sc = new Scanner(System.in);
int choose = sc.nextInt();
switch (choose){
case(1):
case(2):
case(3):
case(4):
case(5):
}
}
}
二 ,创建类,一个标准Javabean.
package xiangmu.studentSystem;
public class Student {
private String name ;
private String character;
private String interest;
public Student() {
}
public Student(String name, String character, String interest) {
this.name = name;
this.character = character;
this.interest = interest;
}
/**
* 获取
* @return name
*/
public String getName() {
return name;
}
/**
* 设置
* @param name
*/
public void setName(String name) {
this.name = name;
}
/**
* 获取
* @return character
*/
public String getCharacter() {
return character;
}
/**
* 设置
* @param character
*/
public void setCharacter(String character) {
this.character = character;
}
/**
* 获取
* @return interest
*/
public String getInterest() {
return interest;
}
/**
* 设置
* @param interest
*/
public void setInterest(String interest) {
this.interest = interest;
}
public String toString() {
return "Student{name = " + name + ", character = " + character + ", interest = " + interest + "}";
}
}
构造增删改查4个方法,还定义了一个遍历的方法,方便每次执行观察是否正确
//定义一个遍历的方法,方便每次执行后观察是否正确
private static void banliyibian(ArrayList<Student> studentsystem) {
for (int i = 0; i < studentsystem.size(); i++) {
System.out.println(i+1+":"+ studentsystem.get(i).toString());
}
}
//定义增方法
public static ArrayList addstudent(ArrayList studentsystem,String name ,String character,String interest ){
//将信息放在类中,再将类放在集合中
Student st = new Student();
st.setName(name);
st.setCharacter(character);
st.setInterest(interest);
studentsystem.add(st);
//返回增加后的集合
return studentsystem;
}
//定义删除方法
public static ArrayList deletestudent( ArrayList studentsystem,int chose) {
//遍历看是否存在选项
for (int i = 0; i < studentsystem.size(); i++) {
if (chose == i+1) {
//删除选项
studentsystem.remove(i);
return studentsystem;
}
//输出错误,调戏一哈
}System.out.println("还没添加这个冤种,你想加入?");
return studentsystem;
}
public static ArrayList updatestudent(ArrayList studentsystem,int chose2 ,int chose3,String input){
//遍历看是否存在
for (int i = 0; i < studentsystem.size(); i++) {
if (chose2 == i+1) {
//纯在将类取出
Student st = (Student) studentsystem.get(i);
//判断选项要改哪个,改信息
switch (chose3){
case 1-> {
st.setName(input);
return studentsystem;
}
case 2->{
st.setCharacter(input);
return studentsystem;
}
case 3-> {
st.setInterest(input);
return studentsystem;
}
}
}
}
System.out.println("没有这人,我看你像冤种");
return studentsystem;
}
public static void querystudent(ArrayList studentsystem,String name){
//先每个类取出来
for (int i = 0; i < studentsystem.size(); i++) {
Student st= (Student) studentsystem.get(i);
//再取出name与输入的比较
if(st.getName().equals(name)){
//输出整个类
System.out.println(studentsystem.get(i));
}
}
System.out.println("没有这个冤种,你说的是你自己吗?");
}
}
再将每个case的键盘录入补全
switch (choose){
case("1")->
//录入添加类的信息
{System.out.println("添加你认为的冤种");
System.out.println("输入姓名");
String name = sc.next();
System.out.println("输入特点");
String character = sc.next();
System.out.println("输入爱好");
String interest = sc.next();
addstudent(studentsystem,name,character,interest);
System.out.println("添加成功");
banliyibian(studentsystem);
}
case("2")->{
System.out.println("除掉你认为不是冤种的");
banliyibian(studentsystem);
int chose= sc.nextInt();
deletestudent(studentsystem,chose);
banliyibian(studentsystem);
}
case("3")->{
System.out.println("打哪个");
banliyibian(studentsystem);
//用choose2记录要改哪一个
int choose2 = sc.nextInt();
Student st =studentsystem.get(choose2);
System.out.println("哪方面");
System.out.println("1:姓名 2:特点 3:喜欢做的事情");
//用choose3记录要改那一方面
int choose3 = sc.nextInt();
System.out.println("修理成什么样子");
//用input记录要改成什么
String input = sc.next();
//放入方法
updatestudent(studentsystem,choose2,choose3,input);
banliyibian(studentsystem);
}
case("4")->{
System.out.println("想看哪个冤种,他名字是什么?");
//记录输入的名字
String name = sc.next();
querystudent(studentsystem,name);}
case("5")-> {System.out.println("喜欢的话下次再来");
//停止虚拟机运行
System.exit(0);}
}
##结果图
搞完,继续学习对比人家怎么做的。