需求分析:
通过数组 ,完成 对学生信息的 管理 (增删改查)
创建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. Flutter学习笔记(37)--动画曲线Curves 效果

    如需转载,请注明出处:Flutter学习笔记(37)--动画曲线Curves 效果

  2. android 6.0 以上在doze模式精确定时

    public static void start12hAlarm() { int seconds = TIMERLENGTH; ECMLog.i_ecms(CLASS_TAG, " star ...

  3. Git的常用命令记录

    Git的常用命令记录 1.与远程仓库建立连接,即关联一个远程库 git remote add origin git@server-name:path/repo-name.git; 2.查看当前分支  ...

  4. dart快速入门教程 (7.1)

    7.面向对象 dart是一门使用类和单继承的面向对象语言,所有的对象都是类的实例,所有的类都是Object的子类,换句话说就是万物皆对象 7.1.类与对象 void main() { // 注意:ne ...

  5. vue全家桶(2.7)

    3.11.1.vue-router中的全局钩子函数 在vue-router中,路由发生变化,我们可以做一些事情,例如:可以决定是否进入导航,可以决定跳转到哪里,官方文档中又叫做导航守卫 首先来看一个全 ...

  6. 【错误】fatal: destination path already exists and is not an empty directory. 错误及解决办法

    今天在使用Git for Windows clone代码时,遇到了题目所示的错误,简单来说就是目标路径‘.’已经存在并且不是一个空目录. 可是在我在文件夹下并没有看到任何文件,显示“该文件夹为空”,然 ...

  7. JavaScript笔记- 函数声明和函数表达式(001)

    function 是 Javascript 中的第一类对象,这就意味着函数可以像其他值一样被传递.一个最常见的用法就是将一个匿名函数作为回调函数传递到另外一个异步函数中. 函数声明 ? 1 funct ...

  8. 远程登录LINUX

    远程登录LINUX LINUX 大多数应用于服务器,因此我们一般都是用远程登录的方式访问系统,windows的操作系统远程访问Linux的操作系统,我们需要另外安装终端软件,如Scure CRT,PU ...

  9. 极致Web性能 —— SPA性能指南

    前言 前端框架时代,为开发体验.效率与页面性能带来,非常大的革命.大家纷纷拿起一系列打包工具(webpack/parcel etc.),配合一系列加载器快速搭建起一个 SPA 页面. SPA 应用带来 ...

  10. kafka的认识、安装与配置

    认识Kafka 花费越少的精力在数据移动上,就能越专注于核心业务 --- <Kafka:The Definitive Guide> 认识 Kafka 之前,先了解一下发布与订阅消息系统:消 ...