Java学习笔记-学生管理系统
Java学习笔记
一个Student类
public class Student {
private String sid;
private String name;
private String age;
private String address;
public Student() {
}
public Student(String sid, String name, String age, String address) {
this.sid = sid;
this.name = name;
this.age = age;
this.address = address;
}
public String getSid() {
return sid;
}
public void setSid(String sid) {
this.sid = sid;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getAge() {
return age;
}
public void setAge(String age) {
this.age = age;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
}
一个Student的测试类
import java.util.ArrayList;
import java.util.Scanner;
public class Student_Demo {
public static void main(String[] args) {
ArrayList<Student> array = new ArrayList<>();
while (true) {
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);
String line = sc.nextLine();
switch (line) {
case "1":
// System.out.println("添加学生成功");
addStudent(array);
break;
case "2":
// System.out.println("修改学生成功");
modifyStudent(array);
break;
case "3":
// System.out.println("删除学生成功");
delStudent(array);
break;
case "4":
// System.out.println("查看学生成功");
showStudent(array);
break;
case "5":
System.out.println("谢谢使用");
// break;
return;
// System.exit(0);
}
}
}
// 添加学生
// 传入参数是学生数组,添加学生对象,不返回
public static void addStudent(ArrayList<Student> array) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入学号:");
String sid = sc.nextLine();
boolean flag = false;
for (int i = 0; i < array.size(); i++) {
if (sid.equals(array.get(i).getSid())) {
flag = true;
}
}
if (flag) {
System.out.println("有内鬼,停止交易!");
} else {
System.out.println("请输入姓名:");
String name = sc.nextLine();
System.out.println("请输入年龄:");
String age = sc.nextLine();
System.out.println("请输入地址:");
String address = sc.nextLine();
Student student = new Student();
student.setSid(sid);
student.setName(name);
student.setAge(age);
student.setAddress(address);
array.add(student);
System.out.println("添加学生成功!");
}
}
// 删除学生
// 传入的参数是学生数组,删除学生对象,不返回
public static void delStudent(ArrayList<Student> array){
Scanner sc = new Scanner(System.in);
System.out.println("请输入您要删除学生的学号:");
String sid = sc.nextLine();
boolean flag = true;
// j用来获取要删除对象的索引
int j = 0;
for (int i = 0; i < array.size(); i++) {
if (sid.equals(array.get(i).getSid())) {
flag = false;
j = i;
}
}
if(flag){
System.out.println("有内鬼,停止交易!");
}else{
System.out.println("正在删除.........");
array.remove(array.get(j));
}
}
// 修改学生
// 选择修改学生的学号,然后可以修改的对象
public static void modifyStudent(ArrayList<Student> array){
Scanner sc = new Scanner(System.in);
System.out.println("请输入您要修改学生的学号:");
String sid = sc.nextLine();
boolean flag = false;
int j = 0;
for (int i = 0; i < array.size(); i++) {
if (sid.equals(array.get(i).getSid())) {
flag = true;
j = i;
}
}
if(flag){
System.out.println("修改的学号为:");
sid = sc.nextLine();
array.get(j).setSid(sid);
System.out.println("修改的姓名为:");
sid = sc.nextLine();
array.get(j).setName(sid);
System.out.println("修改的年龄为:");
sid = sc.nextLine();
array.get(j).setAge(sid);
System.out.println("修改的地址为:");
sid = sc.nextLine();
array.get(j).setAddress(sid);
System.out.println("修改成功,请进行查看");
}else{
System.out.println("有内鬼,终止交易!");
}
}
// 查看所有学生
// 传入参数是学生数组,进行遍历,不返回
public static void showStudent(ArrayList<Student> array) {
if (array.size() != 0) {
System.out.println("学号\t\t"+"姓名\t\t"+"年龄\t\t"+"地址");
for (int i = 0; i < array.size(); i++) {
System.out.printf("%-8s",array.get(i).getSid());
System.out.printf("%-8s",array.get(i).getName());
System.out.printf("%-8s",array.get(i).getAge());
System.out.printf("%-8s",array.get(i).getAddress());
System.out.println();
}
System.out.println("查看完毕");
}
else{
System.out.println("请先添加学生,再进行查看!");
}
}
}
Java学习笔记-学生管理系统的更多相关文章
- 《Java学习笔记(第8版)》学习指导
<Java学习笔记(第8版)>学习指导 目录 图书简况 学习指导 第一章 Java平台概论 第二章 从JDK到IDE 第三章 基础语法 第四章 认识对象 第五章 对象封装 第六章 继承与多 ...
- Java学习笔记4
Java学习笔记4 1. JDK.JRE和JVM分别是什么,区别是什么? 答: ①.JDK 是整个Java的核心,包括了Java运行环境.Java工具和Java基础类库. ②.JRE(Java Run ...
- java学习笔记13--比较器(Comparable、Comparator)
java学习笔记13--比较器(Comparable.Comparator) 分类: JAVA 2013-05-20 23:20 3296人阅读 评论(0) 收藏 举报 Comparable接口的作用 ...
- 第83节:Java中的学生管理系统分页功能
第83节:Java中的学生管理系统分页功能 分页功能一般可以做成两种,一种是物理分页,另一种是逻辑分页.这两种功能是有各自的特点的,物理分页是查询的时候,对数据库进行访问,只是查一页数据就进行返回,其 ...
- 第82节:Java中的学生管理系统
第82节:Java中的学生管理系统 学生管理系统的删除功能 删除,点击超链接,点击弹出对话框式是否进行删除,如果确定,就删除,超链接执行的是js方法,在js里访问,跳转servlet,,servlet ...
- 20145316许心远《Java学习笔记》第三周总结
20145316许心远<Java程序设计>第3周学习总结 教材学习内容总结 一.定义类: 类定义时使用class关键字 如果要将x绑定到新建的对象上,可以使用"="制定 ...
- Java学习笔记之---方法和数组
Java学习笔记之---方法与数组 (一)方法 (1)什么是方法? 方法是解决一类问题的步骤的有序组合 方法包含于类或对象中 方法在程序中被创建,在其他地方被引用 (2)方法的优点 使程序变得更简短而 ...
- Java学习笔记之---集合
Java学习笔记之---集合 (一)集合框架的体系结构 (二)List(列表) (1)特性 1.List中的元素是有序并且可以重复的,成为序列 2.List可以精确的控制每个元素的插入位置,并且可以删 ...
- JAVA学习笔记—review基本知识[反射与异常]
JAVA学习笔记—review基本知识[反射与异常] 1.异常: 1.1异常的分类: Java会将所有的异常封装成对象,其根本父类为Throwable. Throwable有两个子类:Error 和E ...
随机推荐
- Java 中用到的线程调度算法是什么?
抢占式.一个线程用完 CPU 之后,操作系统会根据线程优先级.线程饥饿情况等 数据算出一个总的优先级并分配下一个时间片给某个线程执行.
- Linux如何查看某个端口是否被占用
1.netstat -anp |grep 端口号 2.netstat -nultp(此处不用加端口号) 3.netstat -anp |grep 82 查看82端口的使用情况
- 查看mysql相关信息
查看本机mysql的相关信息,执行以下SQL即可: SHOW VARIABLES LIKE "%char%";
- 手把手教你学vue-4(vuex)
1.首先明白vuex是做什么用的. 管理统一组件状态state.每个应用将仅仅包含一个 store 实例.单一状态树让我们能够直接地定位任一特定的状态片段,在调试的过程中也能轻易地取得整个当前应用状态 ...
- jboss 7.1.1.final 报错 set the maxParameterCount attribute on the Connector
Therefore, I cannot just add the connector attribute in standalone.xml like so: 在 <JBOSS_HOME> ...
- 拼凑一个ABP VNext管理后台
介绍 本项目前后端分离,后端采用ABP VNext框架,前端Vue. 项目地址: https://github.com/pojianbing/AuthCenter 目前包含的模块有: 身份认证管理 I ...
- python---单链表的常用操作
class Node(object): """结点""" def __init__(self, data): self.data = dat ...
- SSM实现个人博客-day04
项目源码免费下载:SSM实现个人博客 有问题询问vx:kht808 3.项目搭建(SSM整合) (1)创建maven工程,导入相应的依赖 <properties> <project. ...
- 修复tunl0-二进制安装calico
这篇博文很重要,出现这个问题导致pod之间无法通讯,pod无法连接外网. 出现的问题是二进制方式安装了节点之后, tunl0没有显示,通过ifconfig tunl0 up 启动tunl0 没有意义, ...
- 如何使用Android可视化埋点
Android可视化埋点是Android全埋点的增强.开发者可以将App界面同步至DTM界面,并在DTM界面通过可视化点击的方式添加埋点事件.目前Android可视化埋点包含两种埋点方式:普通可视化埋 ...