然后做网站/湖北百度推广电话

然后做网站,湖北百度推广电话,杭州做网站公司有哪些,论文中网站数据则呢做文献参考(以下内容全部来自上述课程) 1.业务分析并搭建主菜单 1.需求 采取控制台的方式去书写学生管理系统 2.分析 1.初始菜单 2.学生类 属性:id,姓名,年龄,家庭住址 3.添加功能 键盘录入每一个学生信息并…

在这里插入图片描述
(以下内容全部来自上述课程)
在这里插入图片描述

1.业务分析并搭建主菜单

1.需求

采取控制台的方式去书写学生管理系统

2.分析

1.初始菜单

在这里插入图片描述

2.学生类

属性:id,姓名,年龄,家庭住址

3.添加功能

键盘录入每一个学生信息并添加,需要满足以下要求:

  • id唯一
4.删除功能

键盘录入要删除的学生id,需要满足以下要求:

  • id存在删除
  • id不存在,需要提示不存在,并返回的初始菜单
5.修改功能

键盘录入要修改的学生id,需要满足以下要求:

  • id存在,继续录入其他信息
  • id不存在,需要提示不存在,并返回的初始菜单
6.查询功能

打印所有的学生信息,需要满足以下要求:

  • 如果没有学生信息,提示:当前无学生信息,请添加后再查询
  • 如果有学生信息,需要按照以下格式输出。(不用过于纠结对齐的问题)

在这里插入图片描述

3.流程图

在这里插入图片描述

4.代码

1.Javabean
package xueshengguanli;public class Student {private String id;private String name;private int age;private String address;public Student() {}public Student(String id, String name, int age, String address) {this.id = id;this.name = name;this.age = age;this.address = address;}/*** 获取* @return id*/public String getId() {return id;}/*** 设置* @param id*/public void setId(String id) {this.id = id;}/*** 获取* @return name*/public String getName() {return name;}/*** 设置* @param name*/public void setName(String name) {this.name = name;}/*** 获取* @return age*/public int getAge() {return age;}/*** 设置* @param age*/public void setAge(int age) {this.age = age;}/*** 获取* @return address*/public String getAddress() {return address;}/*** 设置* @param address*/public void setAddress(String address) {this.address = address;}public String toString() {return "Student{id = " + id + ", name = " + name + ", age = " + age + ", address = " + address + "}";}
}
2.测试类
package xueshengguanli;import java.util.ArrayList;
import java.util.Scanner;public class StudentSystem {public static void main(String[] args) {// 将 ArrayList<Student> 移到循环外部,确保操作的是同一个列表ArrayList<Student> list = new ArrayList<>();loop: 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 choice = sc.next();  // 容错率switch (choice) {case "1":System.out.println("添加学生");// 调用添加学生的方法addStudent(list);break;case "2":System.out.println("删除学生");// 调用删除学生的方法deleteStudent(list);break;case "3":System.out.println("修改学生");// 调用修改学生的方法updateStudent(list);break;case "4":System.out.println("查询学生");// 调用查询学生的方法queryStudent(list);break;case "5":System.out.println("退出");break loop;// System.exit(0);  停止虚拟机运行default:System.out.println("输入有误");}}}// 添加学生public static void addStudent(ArrayList <Student> list){// 利用空参构造方法创建一个新的学生对象Student newStudent = new Student();Scanner sc = new Scanner(System.in);System.out.println("请输入学生学号:");String id = sc.next();boolean flag = isExist(list,id);if (flag) {System.out.println("当前学号已存在,请重新输入");return;}newStudent.setId(id);System.out.println("请输入学生姓名:");String name = sc.next();newStudent.setName(name);System.out.println("请输入学生年龄:");int age = sc.nextInt();newStudent.setAge(age);System.out.println("请输入学生住址:");String address = sc.next();newStudent.setAddress(address);// 把新的学生对象添加到集合中list.add(newStudent);// 提示添加成功System.out.println("添加成功");}// 删除学生public static void deleteStudent(ArrayList<Student> list){Scanner sc = new Scanner(System.in);System.out.println("请输入要删除的学生学号:");String id = sc.next();// 查询 id 在集合中的索引位置int index = getIndex(list,id);if (index == -1) {System.out.println("当前学号不存在,请重新输入");return;}// 删除list.remove(index);// 提示删除成功System.out.println("删除成功");}// 修改学生public static void updateStudent(ArrayList<Student> list) {// 请输入要修改的 idScanner sc = new Scanner(System.in);System.out.println("请输入要修改的学生学号:");String id = sc.next();// 查询 id 在集合中的索引位置int index = getIndex(list,id);if (index == -1) {System.out.println("当前学号不存在,请重新输入");return;}// 获取要修改的学生对象Student student = list.get(index);// 请输入要修改的学生信息System.out.println("请输入要修改的学生姓名:");String name = sc.next();student.setName(name);System.out.println("请输入要修改的学生年龄:");int age = sc.nextInt();student.setAge(age);System.out.println("请输入要修改的学生住址:");String address = sc.next();student.setAddress(address);// 提示修改成功System.out.println("修改成功");}// 查询学生public static void queryStudent(ArrayList<Student> list){if (list.size() == 0) {System.out.println("当前无学生信息,请添加后重试");return;}// 输出表头System.out.println("学号\t姓名\t年龄\t住址");// 遍历原数组for (int i = 0; i < list.size(); i++) {// 获取当前学生对象Student student = list.get(i);// 输出当前学生对象的信息System.out.println(student.getId() + "\t" + student.getName() + "\t"+ student.getAge() + "\t" + student.getAddress());}}// 判断当前 id 是否存在public static boolean isExist(ArrayList<Student> list,String id){// 遍历原数组for (int i = 0; i < list.size(); i++) {// 判断当前学生对象的 id 是否等于要判断的 idif(list.get(i).getId().equals(id)){// 如果相等,就返回 truereturn true;}}// 如果遍历完都没有相等的,就返回 falsereturn false;}// 通过 id 获取索引public static int getIndex(ArrayList<Student> list,String id){// 遍历原数组for (int i = 0; i < list.size(); i++) {// 判断当前学生对象的 id 是否等于要判断的 idif(list.get(i).getId().equals(id)){// 如果相等,就返回索引return i;}}// 如果遍历完都没有相等的,就返回 -1return -1;}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/70757.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

记录一次部署PC端网址全过程

当我查看我之前写的文章时、顿时惊奇发出感慨&#xff1a;啥时候写的&#xff1f;是我写的么&#xff1f;疑惑重重… 所以说&#xff0c;好记性不如烂笔头。 记录一次部署PC端网址全过程 部署PC端网址分是三步&#xff1a;第一步&#xff1a;申请域名并映射到外网IP &#xff0…

本地大模型编程实战(22)用langchain实现基于SQL数据构建问答系统(1)

使 LLM(大语言模型) 系统能够查询结构化数据与非结构化文本数据在性质上可能不同。后者通常生成可在向量数据库中搜索的文本&#xff0c;而结构化数据的方法通常是让 LLM 编写和执行 DSL&#xff08;例如 SQL&#xff09;中的查询。 我们将演练在使用基于 langchain 链 &#x…

最好的Git实践指南(Windows/Linux双系统详解)

Git最佳实践指南&#xff1a;从入门到熟练&#xff08;Windows/Linux双系统详解&#xff09; 一、环境搭建与基础配置&#xff08;适用Windows/Linux&#xff09; 1.1 Git安装与验证 # Windows系统安装&#xff08;推荐Chocolatey包管理&#xff09; # 直接下载git二进制文件…

Python零基础学习第二天(条件语句,循环语句)

Python零基础学习第二天&#xff1a;流程控制与模块导入 一、流程控制结构 1. 条件语句&#xff08;if, elif, else&#xff09; 条件语句用于根据不同的条件执行不同的代码块。基本形式如下&#xff1a; if 条件1: # 当条件1为True时执行这里的代码 elif 条件2: # 当前面的条…

从零开始用react + tailwindcs + express + mongodb实现一个聊天程序(三) 实现注册 登录接口

1.划分文件夹 在src目录下创建controllers middleware models routes controllers 放具体的方法 signup login middleware 里面是中间件 请求的验证 models 放对象实体 routes 处理访问路径像/signup /login 等等 2. 接口开发 系统的主要 有用户认证 和 消息 2种类型…

MOE结构解读和deepseek的MoE结构

不管dense还是MoE&#xff08;Mixture of Experts&#xff09;都是基于transformer的。 下面回顾下解码器块的主要架构&#xff1a; 注意力机制-层归一化&残差连接-FFN前馈神经网络-层归一化&残差连接。 dense模型是沿用了这个一架构&#xff0c;将post-norm换为pre-no…

第九节: Vue 3 中的 provide 与 inject:优雅的跨组件通信

文章目录 前言什么是 provide 和 inject&#xff1f;provide 的基本使用inject 的基本使用provide 提供响应式数据数据provide 提供修改数据的方法provide 提供只读响应数据provide 使用symbol作为注入名inject 默认值总结 前言 在 Vue 3 中&#xff0c;provide 和 inject 是一…

微信小程序-二维码绘制

wxml <view bindlongtap"saveQrcode"><!-- 二维码 --><view style"position: absolute;background-color: #FFFAEC;width: 100%;height: 100vh;"><canvas canvas-id"myQrcode" style"width: 200px; height: 200px;ba…

Linux系统中ssh远程登录协议

目录 一、SSH协议概述 二、SSH协议工作原理 三、ssh服务与配置文件 3.1、openssh 3.2、ssh命令 3.3、服务端配置 四、基于密钥验证的免交互登录 4.1、客户端生成密钥 4.2、将公钥拷贝至服务器 4.3、验证免密登录 一、SSH协议概述 SSH&#xff08;Secure Shell&#x…

LangChain大模型应用开发:LangGraph快速构建Agent工作流应用

介绍 大家好&#xff0c;博主又来给大家分享知识了。今天给大家分享的内容是使用LangChain进行大规模应用开发中的LangGraph快速构建Agent工作流应用。 通过对前几次对LangChain的技术分享。我们知道LangChain作为一个强大的工具集&#xff0c;为开发者们提供了丰富的资源和便…

k8s集群3主5从高可用架构(kubeadm方式安装k8s)

关键步骤说明 环境准备阶段 系统更新&#xff1a;所有节点执行yum/apt update确保软件包最新时间同步&#xff1a;通过ntpdate time.windows.com或部署NTP服务器网络规划&#xff1a;明确划分Service网段&#xff08;默认10.96.0.0/12&#xff09;和Pod网段&#xff08;如Flann…

06C语言——指针

一、指针入门 (1)、准备知识 0、图解&#xff1a; 1、内存地址 字节&#xff1a;字节是内存的容量单位&#xff0c;英文称为 byte&#xff0c;一个字节有8位&#xff0c;即 1byte(0000 0000 --- 1111 1111) 8bits(0 --- 1) 地址&#xff1a;系统为了便于区分每一个字节而对…

OpenCV(6):图像边缘检测

图像边缘检测是计算机视觉和图像处理中的一项基本任务&#xff0c;它用于识别图像中亮度变化明显的区域&#xff0c;这些区域通常对应于物体的边界。是 OpenCV 中常用的边缘检测函数及其说明: 函数算法说明适用场景cv2.Canny()Canny 边缘检测多阶段算法&#xff0c;检测效果较…

电子科技大学考研复习经验分享

电子科技大学考研复习经验分享 本人情况&#xff1a;本科就读于电科软院&#xff0c;24年2月开始了解考研&#xff0c;24年3月开始数学&#xff0c;9月决定考本院&#xff08;开始全天候图书馆学习&#xff09;并开始专业课学习&#xff0c;11月底开始政治学习&#xff0c;最后…

硬件基础(3):三极管(1):理论基础

目录 一、背景 二、定义 三、分类 四、工作原理 NPN三极管工作原理 基本工作原理 电流放大倍数&#xff08;增益&#xff09; 输入特性 1. 输入特性的基本概念 2. 输入特性曲线的形态 3. 输入特性曲线的具体分析 输出特性 1. 输出特性图的基本概念 2. 输出特性曲…

Git最佳实践指南(Windows/Linux双系统详解)

Git最佳实践指南&#xff1a;从入门到熟练&#xff08;Windows/Linux双系统详解&#xff09; 一、环境搭建与基础配置&#xff08;适用Windows/Linux&#xff09; 1.1 Git安装与验证 # Windows系统安装&#xff08;推荐Chocolatey包管理&#xff09; # 直接下载git二进制文件…

联想 SR590 服务器 530-8i RAID 控制器更换损坏的硬盘

坏了的硬盘会自动亮黄灯。用一个空的新盘来替换&#xff0c;新盘最好不要有东西。但是有东西可能也没啥&#xff0c;因为我看 RAID 控制器里有格式化的选项 1. 从 IPMI 把服务器关机&#xff0c;电源键进入绿色闪烁状态 2. 断电&#xff0c;推开塑料滑块拉出支架&#xff0c;…

【c语言】字符函数和字符串函数(1)

一、字符分类函数 c语言中有部分函数是专门做字符分类的&#xff0c;也就是一个字符是属于什么类型的字符&#xff0c;这些函 数的使用要包含一个头文件ctype.h中。 其具体如下图所示&#xff1a; 这些函数的使用方式都类似&#xff0c;下面我们通过一个函数来看其…

六十天前端强化训练之第二天CSS选择器与盒模型深度解析

欢迎来到编程星辰海的博客讲解 目录 一、CSS 核心概念 1. 三种引入方式 2. CSS 注释 3. 常见单位系统 二、CSS选择器核心知识 1. 基础选择器类型 2. 组合选择器 3. 伪类选择器&#xff08;部分示例&#xff09; 4. 优先级计算规则 三、盒模型深度解析 1. 标准盒模型图…

【音视频】音视频录制、播放原理

一、音视频录制原理 通常&#xff0c;音视频录制的步骤如下图所示&#xff1a; 我们分别从音频和视频开始采样&#xff0c;通过麦克风和摄像头来接受我们的音频信息和图像信息&#xff0c;这通常是同时进行的&#xff0c;不过&#xff0c;通常视频的采集会比音频的采集慢&…