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学习笔记-学生管理系统的更多相关文章

  1. 《Java学习笔记(第8版)》学习指导

    <Java学习笔记(第8版)>学习指导 目录 图书简况 学习指导 第一章 Java平台概论 第二章 从JDK到IDE 第三章 基础语法 第四章 认识对象 第五章 对象封装 第六章 继承与多 ...

  2. Java学习笔记4

    Java学习笔记4 1. JDK.JRE和JVM分别是什么,区别是什么? 答: ①.JDK 是整个Java的核心,包括了Java运行环境.Java工具和Java基础类库. ②.JRE(Java Run ...

  3. java学习笔记13--比较器(Comparable、Comparator)

    java学习笔记13--比较器(Comparable.Comparator) 分类: JAVA 2013-05-20 23:20 3296人阅读 评论(0) 收藏 举报 Comparable接口的作用 ...

  4. 第83节:Java中的学生管理系统分页功能

    第83节:Java中的学生管理系统分页功能 分页功能一般可以做成两种,一种是物理分页,另一种是逻辑分页.这两种功能是有各自的特点的,物理分页是查询的时候,对数据库进行访问,只是查一页数据就进行返回,其 ...

  5. 第82节:Java中的学生管理系统

    第82节:Java中的学生管理系统 学生管理系统的删除功能 删除,点击超链接,点击弹出对话框式是否进行删除,如果确定,就删除,超链接执行的是js方法,在js里访问,跳转servlet,,servlet ...

  6. 20145316许心远《Java学习笔记》第三周总结

    20145316许心远<Java程序设计>第3周学习总结 教材学习内容总结 一.定义类: 类定义时使用class关键字 如果要将x绑定到新建的对象上,可以使用"="制定 ...

  7. Java学习笔记之---方法和数组

    Java学习笔记之---方法与数组 (一)方法 (1)什么是方法? 方法是解决一类问题的步骤的有序组合 方法包含于类或对象中 方法在程序中被创建,在其他地方被引用 (2)方法的优点 使程序变得更简短而 ...

  8. Java学习笔记之---集合

    Java学习笔记之---集合 (一)集合框架的体系结构 (二)List(列表) (1)特性 1.List中的元素是有序并且可以重复的,成为序列 2.List可以精确的控制每个元素的插入位置,并且可以删 ...

  9. JAVA学习笔记—review基本知识[反射与异常]

    JAVA学习笔记—review基本知识[反射与异常] 1.异常: 1.1异常的分类: Java会将所有的异常封装成对象,其根本父类为Throwable. Throwable有两个子类:Error 和E ...

随机推荐

  1. Docker镜像构建之docker commit

    我们可以通过公共仓库拉取镜像使用,但是,有些时候公共仓库拉取的镜像并不符合我们的需求.尽管已经从繁琐的部署工作中解放出来了,但是在实际开发时,我们可能希望镜像包含整个项目的完整环境,在其他机器上拉取打 ...

  2. kali Linux 渗透测试 | ettercap图形界面(ARP 欺骗 + DNS欺骗)

    上次我们使用 arpspoof 工具在命令行中完成了 arp 欺骗实验,今天我们用另一种工具 ettercap 工具来实现.ettercap支持图形化操作,对新手非常友好,并且操作非常简单, ette ...

  3. 一块小饼干(Cookie)的故事-上篇

    cookie 如果非要用汉语理解的话应该是 一段小型文本文件,由网景的创始人之一的卢 蒙特利在93年发明. 上篇是熟悉一下注册的大致流程,下篇熟悉登录流程以及真正的Cookie 实现基本的注册功能 我 ...

  4. c++实现中介者模式--虚拟聊天室

    内容: 在"虚拟聊天室"实例中增加一个新的具体聊天室类和一个新的具体会员类,要求如下: 1. 新的具体聊天室中发送的图片大小不得超过20M. 2. 新的具体聊天室中发送的文字长度不 ...

  5. 将子分支代码merge到主分支master分支

    1.首先切换到子分支: git checkout develop2.使用git pull 把分支代码pull下来: git pull3.切换到主分支: git checkout master4.把分支 ...

  6. SpringMVC基于注解开发的步骤

    基于xml配置 .1准备好以下相关jar包 .2创建Maven项目使用骨架  (这里选择第二个以webapp结尾的非第一个) 给项目起个名字 这里可以更改maven本地仓库(依赖包所存放的地方)的路径 ...

  7. c++对c的拓展_编译检测的增强

    一:全局变量检测增强:c++编译对全局变量的声明定义有严格区别 //c中全局变量的声明及定义         //c++中全局变量的声明及定义        //c++全局变量写成下列形式则报错 in ...

  8. c++对c的拓展_命名空间_简单使用

    名字的控制:c可使用static关键字使该关键字在本单元内可见,c++则使用命名空间对名字的可见性及产生进行控制 命名空间:控制标识符的作用域(本质上就是一个作用域) 使用特点:1.必须定义在全局范围 ...

  9. NodeJs学习日报day7——简单中间件

    const express = require('express') const app = express() const mw = function(req, resp, next) { cons ...

  10. python中常用内置函数和关键词

    Python 常用内置函数如下: Python 解释器内置了很多函数和类型,您可以在任何时候使用它们.以下按字母表顺序列出它们. 1. abs()函数 返回数字的绝对值. print( abs(-45 ...