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

Java實現(xiàn)簡單班級管理系統(tǒng)

 更新時間:2022年02月25日 12:12:05   作者:LYQyzwds  
這篇文章主要為大家詳細介紹了Java實現(xiàn)簡單班級管理系統(tǒng),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下

 本文設計一個簡單的班級管理系統(tǒng),滿足如下要求:

1、設計學生類Student,包含學號(String型)、姓名(String型)、性別(‘M’/'F’代表男/女)、年齡(int型)、是否黨員(boolean型)、語文(double型)、數(shù)學(double型)等信息,要能夠方便輸出學生信息;

2、設計班級類BanJi,其中創(chuàng)建班級時可指定班級的最大容量。可向班級中批量增加學生信息,以及打印輸出班級中所有學生的信息。

import java.util.Scanner;
class Student{
?? ?String id,name; char sex; int age; boolean isDy; double chinese,math;
?? ?Student(String i,String n,char s,int a,boolean Dy,double c,double m){
?? ??? ?id=i; name=n; sex=s; age=a; isDy=Dy; chinese=c; math=m;
?? ?}
?? ?public String toString(){ //此函數(shù)在用System.out.print(s)打印Student型對象s時,會被自動調(diào)用
?? ??? ?String sex1 = "未知";//即此處控制如何輸出學生信息
?? ??? ?if(sex=='M' || sex=='m')
?? ??? ??? ?sex1 = "男";
?? ??? ?else if(sex=='F' || sex=='f')
?? ??? ??? ?sex1 = "女";
?? ??? ?String isDy1 = "未知";
?? ??? ?if(isDy == true)
?? ??? ??? ?isDy1 = "黨員";
?? ??? ?else
?? ??? ??? ?isDy1 = "非黨員";
?? ??? ?return id+" "+name+" "+sex1+" "+age+" "+isDy1+" "+chinese+" "+math;
?? ?}
?? ?void print() {
?? ??? ?System.out.print(this);
?? ?}
}
class BanJi{ //班級類,實際上是存儲學生的順序表,數(shù)組+表長
?? ? Student [] s; // 此處并未創(chuàng)建數(shù)組對象,僅是數(shù)組的引用
?? ? int len;
?? ? BanJi(int x){ s = new Student[x];} //此處創(chuàng)建【數(shù)組】對象,而非Student對象,用[]而不是()!
?? ? void append() { // 向班級中批量增加學生元素
?? ??? ? int i=0;
?? ??? ? String id,name; char sex; int age; boolean isDy; double chinese,math;
?? ??? ? System.out.print("按如下格式輸入:\n");
? ? ? ? ?System.out.print("000 張三 F 20 true 33.44 66\n");
? ? ? ? ?System.out.print("請輸入:\n");
? ? ? ? ?Scanner sc = new Scanner(System.in);
? ? ? ? ?while(sc.hasNext() == true) {
? ? ? ? ?? ? id = sc.next();
? ? ? ? ?? ? name = sc.next();
? ? ? ? ?? ? String xb = sc.next(); sex = xb.charAt(0);// 不能直接讀取char型,xb.charAt(0)取字符串xb的第一個字符
? ? ? ? ?? ? age = sc.nextInt();
? ? ? ? ?? ? isDy = sc.nextBoolean();
? ? ? ? ?? ? chinese = sc.nextDouble();
? ? ? ? ?? ? math = sc.nextDouble();
? ? ? ? ?? ? //必須創(chuàng)建一個Student型對象,并將其填入數(shù)組s
? ? ? ? ?? ? s[i] = new Student(id,name,sex,age,isDy,chinese,math);
? ? ? ? ?? ? i++;
? ? ? ? ?}//end-while 必須輸入結(jié)束符才能使hasNext()為假
? ? ? ? ?len = i;
?? ? }
?? ? void print() {
?? ??? ? for(int i=0;i<len;i++)
?? ??? ??? ? System.out.print(s[i]+"\n");
?? ? }
}
class App{
?? ?public static void main(String [] args) {
?? ??? ?BanJi h = new BanJi(50);
?? ??? ?h.append();
?? ??? ?h.print();
?? ?}
}

//本例掌握:

1、系統(tǒng)性地學習了Scanner讀取不同類型數(shù)據(jù)、讀取未知數(shù)量的數(shù)據(jù)(haxNext()–面向String型、hasNextInt()、hasNextDouble())、如何結(jié)束輸入(ctrl+Z);

2、重點: Student[] s=new Student[100]; 創(chuàng)建的是一個數(shù)組對象,而非Student對象
注:s是 一個Student[]型 數(shù)組對象,內(nèi)有100個空指針(即null),
如果希望使用st[i].show(); ,s[i]必須先創(chuàng)建對象,然后才能使用。即:s[i]=new Student(…); //注此處使用圓括號,即調(diào)用了Student的構(gòu)造函數(shù)
否則,將會產(chǎn)生空指針引用異常。

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

相關(guān)文章

  • SpringCloud網(wǎng)關(guān)Gateway架構(gòu)解析

    SpringCloud網(wǎng)關(guān)Gateway架構(gòu)解析

    這篇文章主要介紹了SpringCloud網(wǎng)關(guān)Gateway架構(gòu)解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-03-03
  • Java超詳細講解設計模式之一的工廠模式

    Java超詳細講解設計模式之一的工廠模式

    工廠模式有 3 種不同的實現(xiàn)方式,分別是簡單工廠模式、工廠方法模式和抽象工廠模式,工廠模式最大的特點就是解耦合,本篇帶你詳細了解它
    2022-03-03
  • Java實現(xiàn)簡單的貪吃蛇游戲

    Java實現(xiàn)簡單的貪吃蛇游戲

    這篇文章主要介紹了Java實現(xiàn)簡單的貪吃蛇游戲,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-07-07
  • SpringBoot2.7.14整合redis7的詳細過程

    SpringBoot2.7.14整合redis7的詳細過程

    這篇文章主要介紹了SpringBoot2.7.14整合redis7的詳細過程,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友參考下吧
    2023-10-10
  • 使用Prometheus+Grafana的方法監(jiān)控Springboot應用教程詳解

    使用Prometheus+Grafana的方法監(jiān)控Springboot應用教程詳解

    這篇文章主要介紹了用Prometheus+Grafana的方法監(jiān)控Springboot應用,本文通過實例代碼詳解給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-03-03
  • Java設計模式中的適配器模式

    Java設計模式中的適配器模式

    這篇文章主要介紹了Java設計模式中的適配器模式,適配器模式(Adapter Pattern)將某個類的接口轉(zhuǎn)換成客戶端期望的另一個接口表示,主的目的是兼容性,讓原本因接口不匹配不能一起工作的兩個類可以協(xié)同工作。其別名為包裝器
    2022-07-07
  • MyBatis將查詢出的兩列數(shù)據(jù)裝配成鍵值對的操作方法

    MyBatis將查詢出的兩列數(shù)據(jù)裝配成鍵值對的操作方法

    這篇文章主要介紹了MyBatis將查詢出的兩列數(shù)據(jù)裝配成鍵值對的操作代碼,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-08-08
  • Java中的流式編程問題

    Java中的流式編程問題

    這篇文章主要介紹了Java中的流式編程問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-12-12
  • 詳解java解決分布式環(huán)境中高并發(fā)環(huán)境下數(shù)據(jù)插入重復問題

    詳解java解決分布式環(huán)境中高并發(fā)環(huán)境下數(shù)據(jù)插入重復問題

    這篇文章主要介紹了java解決并發(fā)數(shù)據(jù)重復問題 ,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-03-03
  • Java設計模式之橋梁(Bridge)模式

    Java設計模式之橋梁(Bridge)模式

    這篇文章主要介紹了Java設計模式之橋梁(Bridge)模式,文中有非常詳細的代碼示例,對正在學習Java設計模式的小伙伴們有很好的幫助,需要的朋友可以參考下
    2021-05-05

最新評論