欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

java基于控制臺的學(xué)生學(xué)籍管理系統(tǒng)

 更新時間:2022年07月25日 11:32:18   作者:▄█?█●給跪了  
這篇文章主要為大家詳細(xì)介紹了java基于控制臺的學(xué)生學(xué)籍管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實(shí)例為大家分享了java實(shí)現(xiàn)學(xué)生學(xué)籍管理系統(tǒng)的具體代碼,供大家參考,具體內(nèi)容如下

關(guān)鍵技術(shù):循環(huán),switch條件判斷,創(chuàng)建對象,ArrayList()動態(tài)數(shù)組或集合,private

系統(tǒng)功能:

1、添加學(xué)生 (學(xué)號,姓名,年齡,居住地)以學(xué)號為基準(zhǔn)進(jìn)行遍歷,如果學(xué)號已存在,則重新輸入
2、修改學(xué)生 同樣以學(xué)號為判斷依據(jù),輸入要修改的學(xué)生學(xué)號,依次重新輸入姓名,年齡,居住地,如果學(xué)號輸入錯誤,則提示重新輸入
3、刪除學(xué)生 以學(xué)號為基準(zhǔn)進(jìn)行判斷,學(xué)號不存在則進(jìn)行提示;學(xué)號存在,則刪除改學(xué)號所包含的全部信息
4、查看全部學(xué)生信息,采用循環(huán)遍歷
5、退出程序 如果不選擇,則程序回到主頁面

創(chuàng)建學(xué)生類

package student_status_management_system;

public class Student {
? ? private String student_number;
? ? private String name;
? ? private String age;
? ? private String address;

? ? public Student() {
? ? }

? ? public Student(String student_number, String name, String age, String address) {
? ? ? ? this.student_number = student_number;
? ? ? ? this.name = name;
? ? ? ? this.age = age;
? ? ? ? this.address = address;
? ? }

? ? public String getStudent_number() {
? ? ? ? return student_number;
? ? }

? ? public void setStudent_number(String student_number) {
? ? ? ? this.student_number = student_number;
? ? }

? ? 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;
? ? }
}

學(xué)生學(xué)號重復(fù)問題

public static boolean repetition(ArrayList<Student>array,String studentnumber){
? ? ? ? boolean flag = false;
? ? ? ? for (int i = 0;i<array.size();i++){
? ? ? ? ? ? Student s = array.get(i);
? ? ? ? ? ? if (s.getStudent_number().equals(studentnumber)){
? ? ? ? ? ? ? ? flag = true;
? ? ? ? ? ? ? ? break;
? ? ? ? ? ? }
? ? ? ? }

? ? ? ? return flag;
? ? }

添加學(xué)生

public static void addStudent(ArrayList<Student> array) {

? ? ? ? String studentnumber;
? ? ? ? Scanner sc = new Scanner(System.in);

? ? ? ? while (true) {
? ? ? ? ? ? System.out.println("請輸入學(xué)生學(xué)號:");
? ? ? ? ? ? ?studentnumber = sc.nextLine();

? ? ? ? ? ? boolean flag = repetition(array, studentnumber);
? ? ? ? ? ? if (flag) {
? ? ? ? ? ? ? ? System.out.println("該學(xué)號已存在!請重新輸入!");
? ? ? ? ? ? }
? ? ? ? ? ? else {
? ? ? ? ? ? ? ? break;
? ? ? ? ? ? }
? ? ? ? }
? ? ? ? System.out.println("請輸入學(xué)生姓名:");
? ? ? ? String name = sc.nextLine();

? ? ? ? System.out.println("請輸入學(xué)生年齡:");
? ? ? ? String age = sc.nextLine();

? ? ? ? System.out.println("請輸入學(xué)生居住地:");
? ? ? ? String address = sc.nextLine();

? ? ? ? //創(chuàng)建學(xué)生對象,把鍵盤錄入的學(xué)生信息賦值給學(xué)生對象的成員變量

? ? ? ? Student s = new Student();
? ? ? ? s.setStudent_number(studentnumber);
? ? ? ? s.setName(name);
? ? ? ? s.setAge(age);
? ? ? ? s.setAddress(address);

? ? ? ? //將信息添加到集合
? ? ? ? array.add(s);
? ? ? ? System.out.println("添加成功!");

? ? }

修改學(xué)生信息

public static void updateStudent(ArrayList<Student> array) {

? ? ? ? int index = -1;


? ? ? ? Scanner sc = new Scanner(System.in);
? ? ? ? System.out.println("請輸入你要修改的學(xué)生的學(xué)號:");
? ? ? ? String id = sc.nextLine();

? ? ? ? for (int i = 0; i < array.size(); i++) {
? ? ? ? ? ? Student student = array.get(i);
? ? ? ? ? ? if (student.getStudent_number().equals(id)) {
? ? ? ? ? ? ? ? index = i;

? ? ? ? ? ? ? ? break;
? ? ? ? ? ? }
? ? ? ? }

? ? ? ? if (index == -1) {
? ? ? ? ? ? System.out.println("該學(xué)號不存在!");
? ? ? ? } else {

? ? ? ? ? ? System.out.println("請輸入新的學(xué)生姓名:");
? ? ? ? ? ? String name = sc.nextLine();

? ? ? ? ? ? System.out.println("請輸入新的學(xué)生年齡:");
? ? ? ? ? ? String age = sc.nextLine();

? ? ? ? ? ? System.out.println("請輸入新的學(xué)生居住地:");
? ? ? ? ? ? String address = sc.nextLine();

? ? ? ? ? ? Student s = new Student();

? ? ? ? ? ? s.setStudent_number(id);
? ? ? ? ? ? s.setName(name);
? ? ? ? ? ? s.setAge(age);
? ? ? ? ? ? s.setAddress(address);

? ? ? ? ? ? array.set(index, s);
? ? ? ? ? ? System.out.println("修改成功!");
? ? ? ? }

? ? }

刪除學(xué)生

public static void deleteStudent(ArrayList<Student> array) {

? ? ? ? int index = -1; //定義索引
? ? ? ? Scanner sc = new Scanner(System.in);
? ? ? ? System.out.println("請輸入你要刪除的學(xué)生的學(xué)號:");
? ? ? ? String id = sc.nextLine();

? ? ? ? for (int i = 0; i < array.size(); i++) {
? ? ? ? ? ? Student s = array.get(i);
? ? ? ? ? ? if (s.getStudent_number().equals(id)) {
? ? ? ? ? ? ? ? index = i;
? ? ? ? ? ? ? ? break;
? ? ? ? ? ? }


? ? ? ? }

? ? ? ? if (index == -1) {
? ? ? ? ? ? System.out.println("該學(xué)號不存在!");
? ? ? ? } else {
? ? ? ? ? ? array.remove(index);
? ? ? ? ? ? System.out.println("刪除成功!");
? ? ? ? }

? ? }

查看所有學(xué)生

public static void findAllStudent(ArrayList<Student> array) {
? ? ? ? //顯示表頭
? ? ? ? if (array.size() == 0) {
? ? ? ? ? ? System.out.println("你還沒有輸入信息!");
? ? ? ? ? ? return;//阻止程序往下執(zhí)行
? ? ? ? }
? ? ? ? System.out.println("學(xué)號\t\t\t\t姓名\t\t年齡\t\t\t居住地");
? ? ? ? for (int i = 0; i < array.size(); i++) {
? ? ? ? ? ? Student s = array.get(i);
? ? ? ? ? ? System.out.println(s.getStudent_number() + "\t\t" + s.getName() + "\t\t" + s.getAge() + "歲" + "\t\t" + s.getAddress());
? ? ? ? }
? ? }

main方法

public static void main(String[] args) {
? ? ? ? //創(chuàng)建集合,儲存學(xué)生信息
? ? ? ? ArrayList<Student> array = new ArrayList<>();

? ? ? ? while (true) {
? ? ? ? ? ? System.out.println("——————?dú)g迎來到學(xué)生學(xué)籍管理系統(tǒng)——————");
? ? ? ? ? ? System.out.println("1 添加學(xué)生");
? ? ? ? ? ? System.out.println("2 修改學(xué)生");
? ? ? ? ? ? System.out.println("3 刪除學(xué)生");
? ? ? ? ? ? System.out.println("4 查看所有學(xué)生");
? ? ? ? ? ? System.out.println("5 退出系統(tǒng)");
? ? ? ? ? ? //主界面
? ? ? ? ? ? Scanner sc = new Scanner(System.in);
? ? ? ? ? ? System.out.println("請輸入你要進(jìn)行的操作(數(shù)字序號):");
? ? ? ? ? ? String line = sc.nextLine();

? ? ? ? ? ? switch (line) {
? ? ? ? ? ? ? ? case "1":
? ? ? ? ? ? ? ? ? ? addStudent(array);
? ? ? ? ? ? ? ? ? ? break;
? ? ? ? ? ? ? ? case "2":
? ? ? ? ? ? ? ? ? ? updateStudent(array);
? ? ? ? ? ? ? ? ? ? break;
? ? ? ? ? ? ? ? case "3":
? ? ? ? ? ? ? ? ? ? deleteStudent(array);
? ? ? ? ? ? ? ? ? ? break;

? ? ? ? ? ? ? ? case "4":
? ? ? ? ? ? ? ? ? ? findAllStudent(array);
? ? ? ? ? ? ? ? ? ? break;

? ? ? ? ? ? ? ? case "5":
? ? ? ? ? ? ? ? ? ? System.out.println("再見!");
? ? ? ? ? ? ? ? ? ? System.exit(0);//JVM退出


? ? ? ? ? ? }

? ? ? ? }
? ? }

效果演示

添加學(xué)生

添加學(xué)生

學(xué)號重復(fù)

修改學(xué)生

查看所有學(xué)生

修改學(xué)生

查看所有學(xué)生

刪除學(xué)生

刪除學(xué)生

查看所有學(xué)生

退出程序

結(jié)束程序

沒有添加學(xué)生信息時查看學(xué)生

提示沒有信息

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • MyBatis圖文并茂講解注解開發(fā)多對多查詢

    MyBatis圖文并茂講解注解開發(fā)多對多查詢

    這篇文章主要介紹了SpringBoot中Mybatis注解多對多查詢的實(shí)現(xiàn)示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-07-07
  • IDEA如何在當(dāng)前類中查找方法快捷鍵

    IDEA如何在當(dāng)前類中查找方法快捷鍵

    這篇文章主要介紹了IDEA如何在當(dāng)前類中查找方法快捷鍵問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-11-11
  • Spring Cloud接口突然變慢的解決方案

    Spring Cloud接口突然變慢的解決方案

    在Spring Cloud項(xiàng)目中,接口突然變慢可能是由多種原因造成的,本文給大家介紹了一些可能的原因以及相應(yīng)的解決方案,通過代碼示例給大家講解的非常詳細(xì),需要的朋友可以參考下
    2024-01-01
  • SpringMVC的自定義攔截器詳解

    SpringMVC的自定義攔截器詳解

    這篇文章主要介紹了SpringMVC的自定義攔截器詳解,攔截器只會攔截訪問的控制器方法, 如果訪問的是jsp/html/css/image/js是不會進(jìn)行攔截的,需要的朋友可以參考下
    2023-07-07
  • maven利用tomcat插件部署遠(yuǎn)程Linux服務(wù)器的步驟詳解

    maven利用tomcat插件部署遠(yuǎn)程Linux服務(wù)器的步驟詳解

    Maven已經(jīng)是Java的項(xiàng)目管理常用方式,下面這篇文章主要給大家介紹了關(guān)于maven利用tomcat插件部署遠(yuǎn)程Linux服務(wù)器的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考借鑒,下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。
    2017-11-11
  • spring中bean id相同引發(fā)故障的分析與解決

    spring中bean id相同引發(fā)故障的分析與解決

    最近在工作中遇到了關(guān)于bean id相同引發(fā)故障的問題,通過查找相關(guān)資料終于解決了,下面這篇文章主要給大家介紹了因?yàn)閟pring中bean id相同引發(fā)故障的分析與解決方法,需要的朋友可以參考借鑒,下面來一起看看吧。
    2017-09-09
  • Java多線程實(shí)現(xiàn)TCP網(wǎng)絡(luò)Socket編程(C/S通信)

    Java多線程實(shí)現(xiàn)TCP網(wǎng)絡(luò)Socket編程(C/S通信)

    這篇文章主要介紹了Java多線程實(shí)現(xiàn)TCP網(wǎng)絡(luò)Socket編程(C/S通信),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-10-10
  • SpringBoot項(xiàng)目配置明文密碼泄露問題的處理方式

    SpringBoot項(xiàng)目配置明文密碼泄露問題的處理方式

    這篇文章主要介紹了SpringBoot項(xiàng)目配置明文密碼泄露問題的處理方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-06-06
  • Java中volatile關(guān)鍵字的作用

    Java中volatile關(guān)鍵字的作用

    這篇文章主要介紹了Java中volatile關(guān)鍵字的作用,文章基于Java的相關(guān)資料展開對volatile關(guān)鍵字作用的詳細(xì)介紹,具有一定的參考價值,需要的小伙伴可以參考一下
    2022-04-04
  • 解決IntelliJ?IDEA輸出中文顯示為問號問題的有效方法

    解決IntelliJ?IDEA輸出中文顯示為問號問題的有效方法

    最近剛學(xué)到文件字節(jié)流這里,但輸出中文時,出現(xiàn)了控制臺輸出問號的情況,所以下面這篇文章主要給大家介紹了關(guān)于如何解決IntelliJ?IDEA輸出中文顯示為問號問題的有效方法,需要的朋友可以參考下
    2022-07-07

最新評論