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

java控制臺實(shí)現(xiàn)學(xué)生信息管理系統(tǒng)

 更新時間:2022年02月25日 08:44:28   作者:qq_45424990  
這篇文章主要為大家詳細(xì)介紹了java控制臺實(shí)現(xiàn)學(xué)生信息管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下

簡介

最近學(xué)了java基礎(chǔ)后對以前不會寫的作業(yè)深有感觸,想起以前各種在網(wǎng)上找資料找別人的代碼參考,所以今天特地寫了了簡單的基于控制臺的學(xué)生信息管理系統(tǒng)供還在學(xué)基礎(chǔ)的同學(xué)參考,寫的有問題的地方也希望能指出來,好了,下面開始進(jìn)入正題。

環(huán)境

我使用的是idea編譯器和1.8的jdk版本,有使用1.7以下jdk版本的同學(xué)運(yùn)行會報錯,解決方法是把ArrayLis<Student> arrayList=new Array<>();改成  ArrayLis<Student> arrayList=new Array<Student>(),下面開始講解學(xué)生信息管理系統(tǒng)的實(shí)現(xiàn)過程。

系統(tǒng)分析

學(xué)生信息管理系統(tǒng)主要是實(shí)現(xiàn)讓老師登入賬號(賬號和密碼我設(shè)置的都是“123”,你們也可以改成其他的字符串)后可以對學(xué)生進(jìn)行增刪改查的操作和查看所有學(xué)生的信息,所以我各自定義了一個方法來實(shí)現(xiàn)它的功能。

代碼實(shí)現(xiàn)

首先定義一個學(xué)生類Student.java,關(guān)于toString是重寫了父類也就是Object的方法,是用于方便查看結(jié)果的,學(xué)生的屬性可以按需求添加多個,這里我為了方便只寫了四個。

public class Student {
? ? //學(xué)號
? ? private int ?sno;
? ? //姓名
? ? private String ?name;
? ? //性別
? ? private String xes;
? ? //年齡
? ? private int age;
//創(chuàng)建get/set方法
? ? public int getSno() {
? ? ? ? return sno;
? ? }
?
? ? public void setSno(int sno) {
? ? ? ? this.sno = sno;
? ? }
?
? ? public String getName() {
? ? ? ? return name;
? ? }
?
? ? public void setName(String name) {
? ? ? ? this.name = name;
? ? }
?
? ? public String getXes() {
? ? ? ? return xes;
? ? }
?
? ? public void setXes(String xes) {
? ? ? ? this.xes = xes;
? ? }
?
? ? public int getAge() {
? ? ? ? return age;
? ? }
?
? ? public void setAge(int age) {
? ? ? ? this.age = age;
? ? }
//重寫toString方法方便打印
? ? @Override
? ? public String toString() {
? ? ? ? return "Student{" +
? ? ? ? ? ? ? ? "sno=" + sno +
? ? ? ? ? ? ? ? ", name='" + name + '\'' +
? ? ? ? ? ? ? ? ", xes='" + xes + '\'' +
? ? ? ? ? ? ? ? ", age=" + age +
? ? ? ? ? ? ? ? '}';
? ? }
}

然后定義一個結(jié)構(gòu)類Structure.java,把需要實(shí)現(xiàn)的功能方法寫出來。

import java.util.ArrayList;
import java.util.Scanner;
?
/**
?* 老師進(jìn)行登錄操作后(老師的賬號密碼固定為123)
?* 才能對學(xué)生進(jìn)行增刪改查
?*/
public class Structure {
? ? //用來給學(xué)生學(xué)號賦值自增
? ? static int i=1;
? ? //創(chuàng)建ArrayList集合對象用來存放學(xué)生對象
? ? ArrayList<Student> arrayList=new ArrayList<>();
? ? Scanner scanner=new Scanner(System.in);
? ? public void enter(){
? ? ? ? System.out.print("請輸入用戶名:");
? ? ? ? if (scanner.next().equals("123")){
? ? ? ? ? ? System.out.print("請輸入密碼:");
? ? ? ? ? ? if (scanner.next().equals("123")){
? ? ? ? ? ? ? ? System.out.println("登錄成功!");
? ? ? ? ? ? }else{
? ? ? ? ? ? ? ? System.out.println("密碼錯誤!請重新登入");
? ? ? ? ? ? ? ? enter();
? ? ? ? ? ? }
? ? ? ? }else {
? ? ? ? ? ? System.out.println("用戶名錯誤!請重新登入");
? ? ? ? ? ? enter();
? ? ? ? }
? ? }
? ? //增加學(xué)生信息
? ? public void add(){
? ? ? ? //創(chuàng)建學(xué)生對象
? ? ? ? Student student=new Student();
? ? ? ? //System.out.print("學(xué)生ID自增");
? ? ? ? student.setSno(i);
? ? ? ? System.out.print("學(xué)生姓名:");
? ? ? ? student.setName(scanner.next());
? ? ? ? System.out.print("性別:");
? ? ? ? student.setXes(scanner.next());
? ? ? ? System.out.print("年齡:");
? ? ? ? student.setAge(scanner.nextInt());
? ? ? ? //把學(xué)生對象存入集合中
? ? ? ? arrayList.add(student);
? ? ? ? i++;
? ? }
? ? //查看所有學(xué)生信息
? ? public void print(){
? ? ? ? if (arrayList.size()==0){
? ? ? ? ? ? System.out.println("沒有學(xué)生?。?!");
? ? ? ? }else {
? ? ? ? ? ? //使用增強(qiáng)for循環(huán)遍歷集合
? ? ? ? ? ? for (Student student:arrayList){
? ? ? ? ? ? ? ? System.out.println(student.toString());
? ? ? ? ? ? }
? ? ? ? }
? ? }
? ? //通過學(xué)號查找指定的學(xué)生信息
? ? public void inquiry(){
? ? ? ? if (arrayList.size()==0){
? ? ? ? ? ? System.out.println("沒有學(xué)生?。?!");
? ? ? ? }else {
? ? ? ? ? ? System.out.print("請輸入想要查找的學(xué)生的學(xué)號:");
? ? ? ? ? ? for (Student student:arrayList){
? ? ? ? ? ? ? ? if (student.getSno()==scanner.nextInt()){
? ? ? ? ? ? ? ? ? ? System.out.println(student.toString());
? ? ? ? ? ? ? ? }
? ? ? ? ? ? }
? ? ? ? }
? ? }
? ? //刪除指定學(xué)生的信息
? ? public void delete(){
? ? ? ? if (arrayList.size()==0){
? ? ? ? ? ? System.out.println("沒有學(xué)生?。?!");
? ? ? ? }else {
? ? ? ? ? ? System.out.print("請輸入想要刪除的學(xué)生的學(xué)號:");
? ? ? ? ? ? for (int i=0;i<=arrayList.size();i++){
? ? ? ? ? ? ? ? if (arrayList.get(i).getSno()==scanner.nextInt()){
? ? ? ? ? ? ? ? ? ? arrayList.remove(i);
? ? ? ? ? ? ? ? ? ? System.out.println("刪除成功!");
? ? ? ? ? ? ? ? }
? ? ? ? ? ? }
? ? ? ? }
? ? }
? ? //修改指定學(xué)生的信息
? ? public void revisesp(){
? ? ? ? if (arrayList.size()==0){
? ? ? ? ? ? System.out.println("沒有學(xué)生?。?!");
? ? ? ? }else {
? ? ? ? ? ? System.out.print("請輸入想要修改的學(xué)生的學(xué)號:");
? ? ? ? ? ? for (Student student:arrayList){
? ? ? ? ? ? ? ? if (student.getSno()==scanner.nextInt()){
? ? ? ? ? ? ? ? ? ? revisesp01(student);
? ? ? ? ? ? ? ? ? ? System.out.println("修改成功!");
? ? ? ? ? ? ? ? }
? ? ? ? ? ? }
? ? ? ? }
? ? }
? ? public void revisesp01(Student student) {
? ? ? ? System.out.println("請根據(jù)序號選擇指令");
? ? ? ? System.out.println("1.修改姓名");
? ? ? ? System.out.println("2.修改性別");
? ? ? ? System.out.println("2.修改年齡");
? ? ? ? switch (scanner.nextInt()){
? ? ? ? ? ? case 1:
? ? ? ? ? ? ? ? student.setName(scanner.next());
? ? ? ? ? ? ? ? break;
? ? ? ? ? ? case 2:
? ? ? ? ? ? ? ? student.setXes(scanner.next());
? ? ? ? ? ? ? ? break;
? ? ? ? ? ? case 3:
? ? ? ? ? ? ? ? student.setAge(scanner.nextInt());
? ? ? ? ? ? ? ? break;
? ? ? ? }
? ? }
}

最后創(chuàng)建一個測試類Test.java用來測試功能的實(shí)現(xiàn)

import java.util.Scanner;
?
public class Test {
? ? Structure structure=new Structure();
? ? static Scanner scanner=new Scanner(System.in);
? ? public static void main(String[] args) {
? ? ? ? Test test=new Test();
? ? ? ? test.a();
? ? }
? ? public void a(){
? ? ? ? System.out.println("老師登錄(賬號密碼固定123/123)");
? ? ? ? structure.enter();
? ? ? ? while (true){
? ? ? ? ? ? print();
? ? ? ? ? ? switch (scanner.nextInt()){
? ? ? ? ? ? ? ? case 1:
? ? ? ? ? ? ? ? ? ? structure.add();
? ? ? ? ? ? ? ? ? ? break;
? ? ? ? ? ? ? ? case 2:
? ? ? ? ? ? ? ? ? ? structure.print();
? ? ? ? ? ? ? ? ? ? break;
? ? ? ? ? ? ? ? case 3:
? ? ? ? ? ? ? ? ? ? structure.inquiry();
? ? ? ? ? ? ? ? ? ? break;
? ? ? ? ? ? ? ? case 4:
? ? ? ? ? ? ? ? ? ? structure.delete();
? ? ? ? ? ? ? ? ? ? break;
? ? ? ? ? ? ? ? case 5:
? ? ? ? ? ? ? ? ? ? structure.revisesp();
? ? ? ? ? ? ? ? ? ? break;
? ? ? ? ? ? ? ? case 0:
? ? ? ? ? ? ? ? ? ? return;
? ? ? ? ? ? ? ? default:
? ? ? ? ? ? ? ? ? ? System.out.println("請輸入正確的指令!");
? ? ? ? ? ? }
?
? ? ? ? }
? ? }
?
? ? public void print(){
? ? ? ? System.out.println("根據(jù)指令選擇操作:");
? ? ? ? System.out.println("1. 添加學(xué)生信息");
? ? ? ? System.out.println("2. 學(xué)生信息列表");
? ? ? ? System.out.println("3. 查詢指定學(xué)號的學(xué)生信息");
? ? ? ? System.out.println("4. 根據(jù)學(xué)號刪除指定學(xué)生信息");
? ? ? ? System.out.println("5. 請輸入想要修改的學(xué)生的學(xué)號");
? ? ? ? System.out.println("0.退出");
? ? }
}

最后我們就順利的完成了一個簡單的學(xué)生管理系統(tǒng),能獨(dú)立完成這個對我們鞏固基礎(chǔ)知識是能起到一定的幫助的。

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

相關(guān)文章

  • java實(shí)現(xiàn)銀行家算法

    java實(shí)現(xiàn)銀行家算法

    這篇文章主要為大家詳細(xì)介紹了java實(shí)現(xiàn)銀行家算法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-12-12
  • 深入了解MyBatis參數(shù)

    深入了解MyBatis參數(shù)

    今天小編就為大家分享一篇關(guān)于深入了解MyBatis參數(shù),小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2018-12-12
  • JavaEE實(shí)現(xiàn)文件下載

    JavaEE實(shí)現(xiàn)文件下載

    這篇文章主要介紹了JavaEE實(shí)現(xiàn)文件下載的方法,非常的實(shí)用,需要的朋友可以參考下
    2014-10-10
  • SpringBoot 實(shí)現(xiàn)定時任務(wù)的方法詳解

    SpringBoot 實(shí)現(xiàn)定時任務(wù)的方法詳解

    這篇文章主要介紹了SpringBoot 實(shí)現(xiàn)定時任務(wù)的方法詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-08-08
  • Java+Redis撤銷重做功能實(shí)現(xiàn)

    Java+Redis撤銷重做功能實(shí)現(xiàn)

    這篇文章主要介紹了Java+Redis實(shí)現(xiàn)撤銷重做功能,需要考慮撤銷的最大步數(shù),撤銷之后穿插著其他操作則不能再重做,所以引入分布式鎖Redisson進(jìn)行加鎖處理,防止對圖表的操作有并發(fā)請求導(dǎo)致處理撤銷邏輯混亂,感興趣的朋友跟隨小編一起看看吧
    2023-05-05
  • 詳解java WebSocket的實(shí)現(xiàn)以及Spring WebSocket

    詳解java WebSocket的實(shí)現(xiàn)以及Spring WebSocket

    這篇文章主要介紹了詳解java WebSocket的實(shí)現(xiàn)以及Spring WebSocket ,具有一定的參考價值,感興趣的小伙伴們可以參考一下。
    2017-01-01
  • Spring Cloud Feign原理詳解

    Spring Cloud Feign原理詳解

    Feign 主要是幫助我們方便進(jìn)行rest api服務(wù)間的調(diào)用,本文從Spring Cloud對feign封裝的源碼中去了解其主要實(shí)現(xiàn)機(jī)制
    2021-06-06
  • Java類的初始化實(shí)踐分析

    Java類的初始化實(shí)踐分析

    這篇文章主要介紹了Java類的初始化,結(jié)合具體實(shí)例形式較為詳細(xì)的分析了java類初始化的常見情況、操作技巧與相關(guān)注意事項(xiàng),需要的朋友可以參考下
    2019-07-07
  • mybatis中關(guān)于mapper的使用以及注意事項(xiàng)

    mybatis中關(guān)于mapper的使用以及注意事項(xiàng)

    這篇文章主要介紹了mybatis中關(guān)于mapper的使用以及注意事項(xiàng),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-06-06
  • 深入講解Java中的流程控制與運(yùn)算符

    深入講解Java中的流程控制與運(yùn)算符

    這篇文章主要介紹了Java中的流程控制與運(yùn)算符,是Java入門學(xué)習(xí)中的基礎(chǔ)知識,需要的朋友可以參考下
    2015-09-09

最新評論