需求分析:
通过数组 ,完成 对学生信息的 管理 (增删改查)
创建1个 学生类
创建1个 CRUD的类 – 学生管理类 并测试

在这个程序中我只运用了两个类进行操作

package com.hopu.demo;

/*
学生类
*/
public class Student {
private String id;// 学号
private String name;//姓名
private int age; //年龄

public Student() {
this.id = id;
this.name = name;
this.age = age;
}

public String getId() {
return id;
}

public void setId(String id) {
this.id = id;
}

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}

public int getAge() {
return age;
}

public void setAge(int age) {
this.age = age;
}

@Override
public String toString() {
return "Student{" +
"id='" + id + '\'' +
", name='" + name + '\'' +
", age=" + age +
'}';
}

}

//方法类

package com.hopu.demo;
import java.util.Scanner;
public class StudentDemo1 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print(“请输入录入学生的数量:”);
int a = sc.nextInt();
Student[] students = new Student[a + 10000];
int n = 0;
for (int i = 0; i < a; i++) {
System.out.print(“请输入第” + (i + 1) + “个学生的学号:”);
String id = sc.next();
System.out.print(“请输入第” + (i + 1) + “个学生的姓名:”);
String name = sc.next();
System.out.print(“请输入第” + (i + 1) + “个学生的年龄:”);
int age = sc.nextInt();
//给student[i]在内存中申请一块空间
students[i] = new Student();
students[i].setId(id);
students[i].setName(name);
students[i].setAge(age);

n++;
}
System.out.println("录入学生成功!");
while (true) {
int choose = chooseFuntion();
switch (choose) {
//增加
case 1:
System.out.print("请输入增加学生数量:");
int b = sc.nextInt();
for (int j = 0; j < b; j++) {
addStudent(students, a + j);
n++;
}
break;
//删除
case 2:
deleteStudent(students, n);
n--;
break;
//修改
case 3:
updateStudent(students, n);
break;
//查找
case 4:
chazhaoStudent(students, n);
break;
//显示
case 5:
printStudent(students, n);
break;
//退出
case 6:
exit();
break;
default:
System.out.println("----------------------------------");
System.out.println("功能选择有误,请输入正确的功能序号!");
break;
}
}
}

public static int chooseFuntion() {
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("6.退出");
System.out.print("请输入要执行的操作序号:");
Scanner sc = new Scanner(System.in);
int choose = sc.nextInt();
return choose;
}

public static void addStudent(Student[] s, int a) {
s[a] = new Student();
Scanner sc = new Scanner(System.in);
System.out.print("请输入姓名:");
String id = sc.next();
s[a].setName(id);
System.out.print("请输入姓名:");
String name = sc.next();
s[a].setName(name);
System.out.print("请输入年龄:");
int age = sc.nextInt();
s[a].setAge(age);
System.out.println("---------增加成功----------");
}

public static void deleteStudent(Student[] s, int n) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入要删除的姓名:");
String name = sc.next();
for (int i = 0; i < n; i++) {
if (name.equals(s[i].getName())) {
s[i] = s[i + 1];
}
}
System.out.println("---------删除成功----------");
}

public static void updateStudent(Student[] s, int n) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入要修改的姓名:");
String name = sc.next();
for (int i = 0; i < n; i++) {
if (name.equals(s[i].getName())) {
System.out.print("学号修改为:");
String a = sc.next();
s[i].setName(a);
System.out.print("姓名修改为:");
String b = sc.next();
s[i].setName(b);
System.out.print("年龄修改为:");
int c = sc.nextInt();
s[i].setAge(c);
}
}
System.out.println("---------修改成功----------");
}

public static void chazhaoStudent(Student[] s, int n) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入要查找的姓名:");
String name = sc.next();
for (int i = 0; i < n; i++) {
if (name.equals(s[i].getName())) {
System.out.println("---------查找结果----------");
System.out.println("学号:" + s[i].getId()+",姓名:" + s[i].getName() + ",年龄:" + s[i].getAge());
}
}
}

public static void printStudent(Student[] s, int n) {
System.out.println("---------全部学生----------");
for (int i = 0; i < n; i++) {
String id = s[i].getId();
String name = s[i].getName();
int age = s[i].getAge();
System.out.println("学号为:" + id+",姓名为:" + name + ",年龄为:" + age);
}
}

public static void exit() {
System.out.println("----------------退出---------------");
System.out.println("您已退出系统");

}

Java实现简单的增删改查操作的更多相关文章

  1. python3.6 使用 pymysql 连接 Mysql 数据库及 简单的增删改查操作

    1.通过 pip 安装 pymysql 进入 cmd  输入  pip install pymysql   回车等待安装完成: 安装完成后出现如图相关信息,表示安装成功. 2.测试连接 import ...

  2. C#+Access 员工信息管理--简单的增删改查操作和.ini配置文件的读写操作。

    1.本程序的使用的语言是C#,数据库是Access2003.主要是对员工信息进行简单的增删改查操作和对.ini配置文件的读写操作. 2.代码运行效果如下: 功能比较简单.其中在得到查询结果后,在查询结 ...

  3. Java web 简单的增删改查程序(超详细)

    就是简单的对数据进行增删改查.代码如下: 1.bean层:用来封装属性及其get set方法 toString方法,有参构造方法,无参构造方法等. public class Bean { privat ...

  4. 【OF框架】新建库表及对应实体,并实现简单的增删改查操作,封装操作标准WebApi

    准备 搭建好项目框架及数据库,了解框架规范. 1.数据库表和实体一一对应,表名实体名名字相同,用小写,下划线连接.字段名用驼峰命名法,首字母大写. 2.实体放在Entities目录下,继承Entity ...

  5. java+jsp+sqlserver实现简单的增删改查操作 连接数据库代码

    1,网站系统开发需要掌握的技术 (1)网页设计语言,html语言css语言等 (2)Java语言 (3)数据库 (4)等 2,源程序代码 (1) 连接数据库代码 package com.jaovo.m ...

  6. java连接mysql以及增删改查操作

    java连接数据库的代码基本是固定的,步骤过程觉得繁琐些,代码记起来对我来说是闹挺.直接上代码: (温馨提醒:你的项目提前导入连接数据库的jar包才有的以下操作 ) class DBConnectio ...

  7. 初识Hibernate框架,进行简单的增删改查操作

    Hibernate的优势 优秀的Java 持久化层解决方案  (DAO) 主流的对象—关系映射工具产品 简化了JDBC 繁琐的编码 将数据库的连接信息都存放在配置文件 自己的ORM框架 一定要手动实现 ...

  8. 初识hibernate框架之一:进行简单的增删改查操作

    Hibernate的优势 l 优秀的Java 持久化层解决方案  (DAO) l 主流的对象—关系映射工具产品 l 简化了JDBC 繁琐的编码 l 将数据库的连接信息都存放在配置文件 l 自己的ORM ...

  9. JAVA JDBC 简单的增删改查

    package jdbc_util; import java.sql.Connection; import java.sql.DriverManager; import java.sql.Prepar ...

随机推荐

  1. 基于领域驱动设计(DDD)超轻量级快速开发架构(二)动态linq查询的实现方式

    -之动态查询,查询逻辑封装复用 基于领域驱动设计(DDD)超轻量级快速开发架构详细介绍请看 https://www.cnblogs.com/neozhu/p/13174234.html 需求 配合Ea ...

  2. 黎活明8天快速掌握android视频教程--22_访问通信录中的联系人和添加联系人

    Android系统中联系人的通讯录的contentProvide是一个单独的apk,显示在界面的contact也是一个独立的apk,联系人apk通过contentProvide访问底层的数据库. 现在 ...

  3. 3、struct2的常见配置

    1.在eclipse中如何复制一个工程作为一个新的工程 在struct.xml中: <result name="success">/login_sucess.jsp&l ...

  4. Oracel中coalesce函数的用法

    1.coalesce函数的用法 1.1 取出第一个不为空的列的数据.

  5. webpack入门进阶(3)

    1.11.预处理器文件处理 1.sass文件 sass这种css预处理器是以.scss结尾,需要用node-sass和sass-loader来处理 安装loader npm i node-sass s ...

  6. codeforce 796C - Bank Hacking(无根树+思维)

    题目 Although Inzane successfully found his beloved bone, Zane, his owner, has yet to return. To searc ...

  7. 《算法笔记》6.6小节 问题 A: 任务调度

    这道题我一开始看到的时候,想到的是拓补排序,可是这么菜又这么懒的我怎么可能用呢,既然出现在优先队列里面,那么久一定和他有关了 可是并没有使用优先队列 思路: 对于这道题,我们肯定是对他们定义优先级,然 ...

  8. MySQL 百万级数据量分页查询方法及其优化

    方法1: 直接使用数据库提供的SQL语句 语句样式: MySQL中,可用如下方法: SELECT * FROM 表名称 LIMIT M,N 适应场景: 适用于数据量较少的情况(元组百/千级) 原因/缺 ...

  9. ELK安装 docker-compose.yml

    version: '2.2' services: cerebro: image: lmenezes/cerebro:0.8.3 container_name: cerebro ports: - &qu ...

  10. Solaris 10上Oracle 10g安装步骤图解

    文章目录 1. 说明 2. 查看相关包 3. 添加用户和组 4. 设置oracle环境变量 5. 创建Oracle软件目录 6. 修改OS参数 7. 上传Oracle软件包并解压 8. 开始安装 9. ...