最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

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

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

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

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

系統(tǒng)功能:

1、添加學(xué)生 (學(xué)號(hào),姓名,年齡,居住地)以學(xué)號(hào)為基準(zhǔn)進(jìn)行遍歷,如果學(xué)號(hào)已存在,則重新輸入
2、修改學(xué)生 同樣以學(xué)號(hào)為判斷依據(jù),輸入要修改的學(xué)生學(xué)號(hào),依次重新輸入姓名,年齡,居住地,如果學(xué)號(hào)輸入錯(cuò)誤,則提示重新輸入
3、刪除學(xué)生 以學(xué)號(hào)為基準(zhǔn)進(jìn)行判斷,學(xué)號(hào)不存在則進(jìn)行提示;學(xué)號(hào)存在,則刪除改學(xué)號(hào)所包含的全部信息
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é)號(hào)重復(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("請(qǐng)輸入學(xué)生學(xué)號(hào):");
? ? ? ? ? ? ?studentnumber = sc.nextLine();

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

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

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

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

? ? ? ? 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("請(qǐng)輸入你要修改的學(xué)生的學(xué)號(hào):");
? ? ? ? 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é)號(hào)不存在!");
? ? ? ? } else {

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

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

? ? ? ? ? ? System.out.println("請(qǐng)輸入新的學(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("請(qǐng)輸入你要?jiǎng)h除的學(xué)生的學(xué)號(hào):");
? ? ? ? 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é)號(hào)不存在!");
? ? ? ? } 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é)號(hào)\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)建集合,儲(chǔ)存學(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("請(qǐng)輸入你要進(jìn)行的操作(數(shù)字序號(hào)):");
? ? ? ? ? ? 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é)號(hào)重復(fù)

修改學(xué)生

查看所有學(xué)生

修改學(xué)生

查看所有學(xué)生

刪除學(xué)生

刪除學(xué)生

查看所有學(xué)生

退出程序

結(jié)束程序

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

提示沒有信息

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

相關(guān)文章

  • Java的CyclicBarrier循環(huán)屏障解析

    Java的CyclicBarrier循環(huán)屏障解析

    這篇文章主要介紹了Java的CyclicBarrier循環(huán)屏障解析,CyclicBarrier和CountDownLatch一樣,是一個(gè)同步工具類,它允許一組線程相互等待直到達(dá)到某個(gè)common?barrier?point,在程序中CyclicBarrier是非常有用的,它適用于一組線程必須互相等待的情況,需要的朋友可以參考下
    2023-12-12
  • 使用java批量寫入環(huán)境變量的實(shí)現(xiàn)

    使用java批量寫入環(huán)境變量的實(shí)現(xiàn)

    本文主要介紹了使用java批量寫入環(huán)境變量,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-03-03
  • 解讀RabbitMQ和kafka的相同點(diǎn)和不同點(diǎn)是什么

    解讀RabbitMQ和kafka的相同點(diǎn)和不同點(diǎn)是什么

    RabbitMQ和Kafka都是消息中間件,支持分布式系統(tǒng)、高可用性和可靠性,RabbitMQ使用隊(duì)列模型,適合復(fù)雜路由場(chǎng)景;Kafka使用主題-分區(qū)模型,適合大規(guī)模數(shù)據(jù)流處理,RabbitMQ在低延遲方面表現(xiàn)更好,Kafka在高吞吐量方面表現(xiàn)更好
    2024-12-12
  • Spring SpringMVC在啟動(dòng)完成后執(zhí)行方法源碼解析

    Spring SpringMVC在啟動(dòng)完成后執(zhí)行方法源碼解析

    這篇文章主要介紹了SpringMVC在啟動(dòng)完成后執(zhí)行方法源碼解析,還是非常不錯(cuò)的,在這里分享給大家,需要的朋友可以參考下。
    2017-09-09
  • springboot整合Quartz實(shí)現(xiàn)動(dòng)態(tài)配置定時(shí)任務(wù)的方法

    springboot整合Quartz實(shí)現(xiàn)動(dòng)態(tài)配置定時(shí)任務(wù)的方法

    本篇文章主要介紹了springboot整合Quartz實(shí)現(xiàn)動(dòng)態(tài)配置定時(shí)任務(wù)的方法,非常具有實(shí)用價(jià)值,需要的朋友可以參考下
    2017-10-10
  • 深入理解MyBatis中的一級(jí)緩存與二級(jí)緩存

    深入理解MyBatis中的一級(jí)緩存與二級(jí)緩存

    這篇文章主要給大家深入的介紹了關(guān)于MyBatis中一級(jí)緩存與二級(jí)緩存的相關(guān)資料,文中詳細(xì)介紹MyBatis中一級(jí)緩存與二級(jí)緩存的工作原理及使用,對(duì)大家具有一定的參考性學(xué)習(xí)價(jià)值,需要的朋友們下面來一起看看吧。
    2017-06-06
  • Java微信支付之公眾號(hào)支付、掃碼支付實(shí)例

    Java微信支付之公眾號(hào)支付、掃碼支付實(shí)例

    微信支付已經(jīng)成為生活中必不可少的付款方式,本篇文章主要介紹了Java微信支付之公眾號(hào)支付、掃碼支付,有需要的小伙伴可以了解一下。
    2016-11-11
  • 使用SpringBoot獲取resources文件路徑

    使用SpringBoot獲取resources文件路徑

    這篇文章主要介紹了使用SpringBoot獲取resources文件路徑,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-06-06
  • java并發(fā)等待條件的實(shí)現(xiàn)原理詳解

    java并發(fā)等待條件的實(shí)現(xiàn)原理詳解

    這篇文章主要介紹了java并發(fā)等待條件的實(shí)現(xiàn)原理詳解,還是比較不錯(cuò)的,這里分享給大家,供需要的朋友參考。
    2017-11-11
  • JAVA異常體系結(jié)構(gòu)詳解

    JAVA異常體系結(jié)構(gòu)詳解

    Java把異常當(dāng)作對(duì)象來處理,并定義一個(gè)基類java.lang.Throwable作為所有異常的超類,下面通過本文給大家分享JAVA異常體系結(jié)構(gòu),感興趣的朋友一起看看吧
    2017-11-11

最新評(píng)論

九寨沟县| 梓潼县| 北流市| 布拖县| 杭州市| 民县| 平乡县| 沾益县| 滨海县| 千阳县| 辽阳县| 来凤县| 特克斯县| 南汇区| 清水河县| 姚安县| 尼玛县| 边坝县| 金门县| 嘉定区| 吉木乃县| 肥东县| 蓝田县| 随州市| 景洪市| 丁青县| 文山县| 利辛县| 甘孜县| 土默特右旗| 铜鼓县| 灌南县| 锡林郭勒盟| 新蔡县| 岐山县| 洪泽县| 沧州市| 德安县| 安塞县| 永兴县| 铅山县|