1. 程式人生 > 其它 >java入門(包裝類練習)

java入門(包裝類練習)

技術標籤:JAVA學習之路(入門)java資料結構

包裝類的練習

練習要求:
* 利用Vector代替陣列處理:從鍵盤讀入學生成績,找出最高分,並輸出學生成績等級
* 陣列一旦建立,長度就固定不變,所以在建立陣列前就需要知道它的長度
* 向量類java.util.Vector可以動態伸縮
*
* 給向量新增元素
* v.addElement(Object obj);obj 必須是物件

我們在之前的一篇部落格中*****點選跳轉*****已經實現過學生成績的管理系統,功能包括遍歷,新增,刪除等。不過是基於陣列,而今天,我會通過Vector來代替陣列,並結合包裝類的概念來實現該功能。

完整程式碼
import java.util.Scanner;
import java.util.Vector;

/**
 * 利用Vector代替陣列處理:從鍵盤讀入學生成績,找出最高分,並輸出學生成績等級
 * 陣列一旦建立,長度就固定不變,所以在建立陣列前就需要知道它的長度
 * 向量類java.util.Vector可以動態伸縮
 *
 * 給向量新增元素
 * v.addElement(Object obj);obj 必須是物件
 */
public class HelloWorld {
    public static void main(String[] args) {
        //例項化Scanner,用於從鍵盤獲取學生成績
Scanner scan = new Scanner(System.in); //建立Vector物件,相當於原來的陣列 Vector v = new Vector(); int maxScore = 0; //通過迴圈的方式,給Vector新增資料 for(;;){ System.out.println("請輸入學生的成績:"); int score = scan.nextInt(); if(score <
0){//當輸入是負數時,跳出迴圈 break; } if(score > 100){ System.out.println("輸入資料不符合,請重新輸入:"); continue; } Integer inScore = new Integer(score); v.addElement(score);//自動裝箱 //獲取成績最大值 if(maxScore < score){ maxScore = score; } } //遍歷每個學生的成績,並與最大成績比較得到最大的等級 char level = ' '; for(int i = 0;i < v.size();i++){ Object obj = v.elementAt(i); Integer inScore = (Integer)obj; int score = inScore.intValue(); if(maxScore - score <= 10){ level = 'A'; }else if(maxScore - score <=20){ level = 'B'; }else if(maxScore - score <=30){ level = 'C'; }else{ level = 'D'; } System.out.println("student-"+i+"score is"+score+",level is "+level); } } } 結果: 請輸入學生的成績: 33 請輸入學生的成績: 44 請輸入學生的成績: 66 請輸入學生的成績: 77 請輸入學生的成績: -1 student-0score is33,level is D student-1score is44,level is D student-2score is66,level is B student-3score is77,level is A

練習部分並沒有放過多的理論解釋,理論部分會在其他文章中體現和展示。