需求分析:
通过数组 ,完成 对学生信息的 管理 (增删改查)
创建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. v-on事件修饰符

    .stop阻止冒泡 .prevent阻止默认行为 .capture实现捕获触发事件的机制(从大到小) .self实现只有点击当前元素时,才能出发事件处理函数 .once只触发一次事件函数 .stop和 ...

  2. 【初学Java学习笔记】SQL语句调优

    1, 对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引. 2,应尽量避免在 where 子句中对字段进行 null 值判断,创建表时NULL是默认 ...

  3. day19__第三次作业

    一.break 与 continue 的区别 答:break 是结束全部循环,continue 是结束当前循环,开始进行下一循环 二.函数传递参数时,所用的内存地址一样吗? 答:一样 name = ' ...

  4. Python 实现短信轰炸机

    原理其实很简单,就是利用selenium包打开各种网站的注册页,输入轰炸的号码,实现轰炸.其实也算是利用了注册漏洞.申明:仅娱乐使用,禁止️用于非法用途!若用于非法用途,后果及法律责任博主一律不承担 ...

  5. C++ 不定参数"..."的使用

    #include <iostream> #include <cstdio> #include <cstdarg> #define LEN_MSG_BUFFER 12 ...

  6. Selenium WebDriver使用

    目录 介绍 selenium webdriver chromedriver下载安装 1.下载 2.使用 3.测试 WebDriver常用操作 1.浏览器操作 2.窗口和弹框操作 3.cookies 操 ...

  7. 关于数据文件的文件头1-P2

    文章目录 1 疑问点 2 问题模拟 2.1 dump 0,1块 2.2 查看trc文件 2.3 如何查看 1 疑问点 这里引用p2处的一段话: 事实上,每个文件的前128个块,都是文件头,被Oracl ...

  8. SpringMVC的项目架构思想

    SpringMVC的项目架构思想 一.DO和Model的区别 DO是对数据库表的映射.Model是处理业务逻辑的模型(领域模型).例如:用户信息表和用户密码表分别是两个DO,但是对于实体用户来说,密码 ...

  9. 解决移动端点击穿透问题_h5实现移动端点击事件穿透的多种解决方案

    移动端点透点透现象出现的场景: 当A/B两个层上下z轴重叠,上层的A点击后消失或移开(这一点很重要),并且B元素本身有默认click事件(如a标签)或绑定了click事件.在这种情况下,点击A/B重叠 ...

  10. 3dTiles 数据规范详解[3] 内嵌在瓦片文件中的两大数据表

    转载请声明出处:全网@秋意正寒 零.本篇前言 说实话,我很纠结是先介绍瓦片的二进制数据文件结构,还是先介绍这两个重要的表.思前想后,我决定还是先介绍这两个数据表. 因为这两个表不先给读者灌输,那么介绍 ...