Java程序設(shè)計(jì)項(xiàng)目教程(第二版)教學(xué)課件匯總完整版電子教案_第1頁(yè)
Java程序設(shè)計(jì)項(xiàng)目教程(第二版)教學(xué)課件匯總完整版電子教案_第2頁(yè)
Java程序設(shè)計(jì)項(xiàng)目教程(第二版)教學(xué)課件匯總完整版電子教案_第3頁(yè)
Java程序設(shè)計(jì)項(xiàng)目教程(第二版)教學(xué)課件匯總完整版電子教案_第4頁(yè)
Java程序設(shè)計(jì)項(xiàng)目教程(第二版)教學(xué)課件匯總完整版電子教案_第5頁(yè)
已閱讀5頁(yè),還剩511頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、Java程序設(shè)計(jì)項(xiàng)目教程(第二版)21世紀(jì)技能創(chuàng)新型人才培養(yǎng)系列教材計(jì)算機(jī)系列PART 01項(xiàng)目1輸出“Hello, World !PART 02項(xiàng)目2成績(jī)錄入與排序輸出PART 03項(xiàng)目3學(xué)生信息管理PART 06項(xiàng)目6成績(jī)的圖形化表示PART 07項(xiàng)目7學(xué)生信息的文件操作PART 08項(xiàng)目8使用MysQL 管理學(xué)生信息目錄CONTENTSPART 04項(xiàng)目4成績(jī)的異常處理PART 05項(xiàng)目5學(xué)生信息系統(tǒng)可視化設(shè)計(jì)PART 09項(xiàng)目9多窗口售票程序PART 01項(xiàng)目1輸出“Hello, World !JDK 的安裝與配置Eclipse 的安裝與運(yùn)行任務(wù)1.1 JDK 的安裝與配置任務(wù)1.1J

2、DK 的安裝與配置 學(xué)習(xí)Java 程序設(shè)計(jì),編寫的程序必須有運(yùn)行環(huán)境,因此編程之前需要把運(yùn)行環(huán)境搭建好,本任務(wù)將學(xué)習(xí)如何搭建Java 運(yùn)行環(huán)境?!救蝿?wù)情境】【任務(wù)實(shí)現(xiàn)】 下載JDK 后安裝,記住JDK 的安裝路徑,再進(jìn)行JDK 運(yùn)行環(huán)境的配置,配置界面如圖1 - 1 所示。任務(wù)1.1JDK 的安裝與配置 搭建Java 程序運(yùn)行環(huán)境,以便于后續(xù)程序的開(kāi)發(fā)、調(diào)試與運(yùn)行,必須要在電腦中安裝所需的JDK,并進(jìn)行必要的配置。【任務(wù)分析】任務(wù)1.1JDK 的安裝與配置 JDK 有許多版本,本教材以Win10 系統(tǒng)下安裝新版本JDK14 及配置環(huán)境變量的方法為例進(jìn)行介紹。1.1.1 下載JDK14 安裝任務(wù)

3、1.1JDK 的安裝與配置1.1.1 下載JDK14 安裝任務(wù)1.1JDK 的安裝與配置1.1.1 下載JDK14 安裝任務(wù)1.1JDK 的安裝與配置 JDK 的相關(guān)配置,就是設(shè)置環(huán)境變量,環(huán)境變量可以簡(jiǎn)單理解為:設(shè)置后我們就可以在任何地方執(zhí)行Java 命令。1.1.2 配置環(huán)境變量任務(wù)1.1JDK 的安裝與配置1.1.2 配置環(huán)境變量任務(wù)1.1JDK 的安裝與配置1.1.2 配置環(huán)境變量任務(wù)1.1JDK 的安裝與配置1.1.2 配置環(huán)境變量任務(wù)1.1JDK 的安裝與配置1.1.2 配置環(huán)境變量任務(wù)1.1JDK 的安裝與配置任務(wù)1.2 Eclipse 的安裝與運(yùn)行任務(wù)1.2 Eclipse 的

4、安裝與運(yùn)行 工欲善其事,必先利其器,要想方便地進(jìn)行Java 程序的編輯、調(diào)試與運(yùn)行,必須借助開(kāi)發(fā)工具,因此應(yīng)學(xué)會(huì)使用合適的開(kāi)發(fā)工具進(jìn)行程序開(kāi)發(fā)?!救蝿?wù)情境】【任務(wù)實(shí)現(xiàn)】 在Eclipse 集成開(kāi)發(fā)環(huán)境下,建立并運(yùn)行一個(gè)帶有輸出功能的程序,集成開(kāi)發(fā)界面如圖1 - 11 所示。任務(wù)1.2 Eclipse 的安裝與運(yùn)行 要運(yùn)行Eclipse 應(yīng)用,首先要下載Eclipse 并進(jìn)行安裝,安裝完成后可結(jié)合Eclipse 的使用方法創(chuàng)建Java 應(yīng)用并進(jìn)行編輯、調(diào)試與運(yùn)行。【任務(wù)分析】任務(wù)1.2 Eclipse 的安裝與運(yùn)行 從Eclipse 官網(wǎng)/downloads/ 下載Eclipse 的安裝文件ec

5、lipseinst-win64.exe,雙擊安裝文件開(kāi)始安裝。1.2.1 Eclipse 的安裝任務(wù)1.2 Eclipse 的安裝與運(yùn)行1.2.1 Eclipse 的安裝任務(wù)1.2 Eclipse 的安裝與運(yùn)行1.2.1 Eclipse 的安裝任務(wù)1.2 Eclipse 的安裝與運(yùn)行1.2.1 Eclipse 的安裝任務(wù)1.2 Eclipse 的安裝與運(yùn)行1.2.2 Eclipse 的運(yùn)行任務(wù)1.2 Eclipse 的安裝與運(yùn)行1.2.2 Eclipse 的運(yùn)行任務(wù)1.2 Eclipse 的安裝與運(yùn)行1.2.2 Eclipse 的運(yùn)行任務(wù)1.2 Eclipse 的安裝與運(yùn)行1.2.2 Ecli

6、pse 的運(yùn)行任務(wù)1.2 Eclipse 的安裝與運(yùn)行1.2.2 Eclipse 的運(yùn)行任務(wù)1.2 Eclipse 的安裝與運(yùn)行1.2.2 Eclipse 的運(yùn)行任務(wù)1.2 Eclipse 的安裝與運(yùn)行1.2.2 Eclipse 的運(yùn)行任務(wù)1.2 Eclipse 的安裝與運(yùn)行 (9)程序分析和說(shuō)明:1)語(yǔ)句package p1,是建立一個(gè)包(文件夾),生成的類文件將存放于包中。2) 程序第一行public class OutHello, 是一個(gè)類定義語(yǔ)句, 類名為OutHello。public 關(guān)鍵字指明類的訪問(wèn)方式為公有,也就是在整個(gè)程序內(nèi)都可以訪問(wèn)到它。如果將類定義為public,則類其名

7、稱必須與主文件名一致,并且大小寫敏感。3)類后大括號(hào)內(nèi)可以定義類的成員和方法,這里只定義了一個(gè)方法main(),該方法通過(guò)調(diào)用System.out.println() 函數(shù)將字符串從標(biāo)準(zhǔn)輸出設(shè)備輸出。對(duì)于一個(gè)可執(zhí)行的Java 類,main 方法是必需的,而且該main 方法必須是公有(public)、靜態(tài)(static)和沒(méi)有返回值(void)的,同時(shí)它只能帶一個(gè)字符串型(String)的參數(shù)。4)程序的一行“/”是注釋,只說(shuō)明不運(yùn)行。5)每個(gè)命令語(yǔ)句結(jié)束,必須以“;”結(jié)尾。1.2.2 Eclipse 的運(yùn)行任務(wù)1.2 Eclipse 的安裝與運(yùn)行 (10)Java 語(yǔ)言特點(diǎn):1)面向?qū)ο螅褐?/p>

8、持代碼繼承及重用,是完全面向?qū)ο蟮?,它不支持類似C 語(yǔ)言那樣的面向過(guò)程的程序設(shè)計(jì)技術(shù)。2)解釋執(zhí)行:Java 解釋器(運(yùn)行系統(tǒng))能直接運(yùn)行目標(biāo)代碼指令。3)平臺(tái)無(wú)關(guān):Java 源程序被編譯成一種高層次的與機(jī)器無(wú)關(guān)的Byte-codes 格式語(yǔ)言,被設(shè)計(jì)在Java 虛擬機(jī)上運(yùn)行。4)多線程:Java 提供的多線程功能使得在一個(gè)程序里可同時(shí)執(zhí)行多個(gè)小任務(wù)。多線程帶來(lái)的好處是可以有更好的交互性能和實(shí)時(shí)控制性能。5)健壯性:Java 致力于檢查程序在編譯和運(yùn)行時(shí)的錯(cuò)誤,類型檢查幫助檢查出許多開(kāi)發(fā)早期出現(xiàn)的錯(cuò)誤。1.2.2 Eclipse 的運(yùn)行任務(wù)1.2 Eclipse 的安裝與運(yùn)行1.2.2 Ecl

9、ipse 的運(yùn)行任務(wù)1.2 Eclipse 的安裝與運(yùn)行 (10)Java 語(yǔ)言特點(diǎn):1)面向?qū)ο螅褐С执a繼承及重用,是完全面向?qū)ο蟮?,它不支持類似C 語(yǔ)言那樣的面向過(guò)程的程序設(shè)計(jì)技術(shù)。2)解釋執(zhí)行:Java 解釋器(運(yùn)行系統(tǒng))能直接運(yùn)行目標(biāo)代碼指令。3)平臺(tái)無(wú)關(guān):Java 源程序被編譯成一種高層次的與機(jī)器無(wú)關(guān)的Byte-codes 格式語(yǔ)言,被設(shè)計(jì)在Java 虛擬機(jī)上運(yùn)行。4)多線程:Java 提供的多線程功能使得在一個(gè)程序里可同時(shí)執(zhí)行多個(gè)小任務(wù)。多線程帶來(lái)的好處是可以有更好的交互性能和實(shí)時(shí)控制性能。5)健壯性:Java 致力于檢查程序在編譯和運(yùn)行時(shí)的錯(cuò)誤,類型檢查幫助檢查出許多開(kāi)發(fā)早期出

10、現(xiàn)的錯(cuò)誤。1.2.2 Eclipse 的運(yùn)行PART 02項(xiàng)目2成績(jī)錄入與排序輸出學(xué)生各科成績(jī)求和及求平均分學(xué)生成績(jī)統(tǒng)計(jì)學(xué)生成績(jī)排序菜單使用任務(wù)2.1 學(xué)生各科成績(jī)求和及求平均分任務(wù)2.1 學(xué)生各科成績(jī)求和及求平均分 有一名學(xué)生的計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)考了90 分,數(shù)據(jù)庫(kù)技術(shù)考了84,Java 程序設(shè)計(jì)考了92 分,輸出這名學(xué)生三門課程的總成績(jī)及平均成績(jī)。【任務(wù)情境】【任務(wù)實(shí)現(xiàn)】 public class OutScorepublic static void main(String args) int network, dataBase, java, total=0; / 定義存放三門課及總分的變量f

11、loat average=0.0f; /定義存放平均成績(jī)的變量network=90; /為課程變量賦值dataBase=82;java=92;total=network+dataBase+java; /計(jì)算成績(jī)和并保存到變量totalaverage=(float)total/3; /計(jì)算平均成績(jī)并保存到變量averageSystem.out.println( 該生三門課的總成績(jī)?yōu)椋?total); / 輸出總成績(jī)System.out.println( 該生三門課的平均成績(jī)?yōu)椋?average);程序運(yùn)行結(jié)果:該生三門課的總成績(jī)?yōu)椋?64該生三門課的平均成績(jī)?yōu)椋?8 本程序在實(shí)現(xiàn)功能時(shí)首先要定義

12、存儲(chǔ)三門課的成績(jī)、總成績(jī)、平均成績(jī)用到的不同類型的變量,然后給課程對(duì)應(yīng)的變量賦成績(jī)值,通過(guò)計(jì)算得到總分值賦給記錄總成績(jī)的變量,計(jì)算得到的平均分值賦給記錄平均成績(jī)的變量,最后輸出總成績(jī)及平均成績(jī)。這段程序涉及的知識(shí)有數(shù)據(jù)類型、標(biāo)識(shí)符、運(yùn)算符與表達(dá)式等?!救蝿?wù)分析】任務(wù)2.1 學(xué)生各科成績(jī)求和及求平均分 1. 標(biāo)識(shí)符用來(lái)標(biāo)識(shí)類名、變量名、方法名、類型名、數(shù)組名、文件名的有效字符序列稱為標(biāo)識(shí)符。簡(jiǎn)單地說(shuō),標(biāo)識(shí)符就是一個(gè)名字。Java 語(yǔ)言規(guī)定標(biāo)識(shí)符由字母、下劃線、美元符號(hào)和數(shù)字組成,并且第一個(gè)字符不能是數(shù)字。標(biāo)識(shí)符中的字母是區(qū)分大小寫的,Beijing和beijing 是不同的標(biāo)識(shí)符。2.1.1 標(biāo)

13、識(shí)符與關(guān)鍵字任務(wù)2.1 學(xué)生各科成績(jī)求和及求平均分 2. 關(guān)鍵字關(guān)鍵字就是Java 語(yǔ)言中已經(jīng)被賦予特定意義的一些單詞,它們?cè)诔绦蛏嫌兄煌挠猛荆豢梢园殃P(guān)鍵詞作為普通標(biāo)識(shí)符來(lái)用。2.1.1 標(biāo)識(shí)符與關(guān)鍵字任務(wù)2.1 學(xué)生各科成績(jī)求和及求平均分 1. 常量常量是指在程序執(zhí)行過(guò)程中始終保持不變的量,根據(jù)數(shù)據(jù)類型的不同,常量有整型、浮點(diǎn)型、字符型、布爾型等幾種。如整數(shù)常量12、-5,雙精度浮點(diǎn)數(shù)常量1.8、-31.92 等。 2. 變量變量是在程序運(yùn)行過(guò)程中可以變化的量。變量有變量名、變量的值、變量的類型。如: int i=0; / 定義了變量的名字為i,i 的初值為0,i 的類型為整型 i=i

14、+5; / 變量i 的值在原基礎(chǔ)上加了52.1.2 基本數(shù)據(jù)類型任務(wù)2.1 學(xué)生各科成績(jī)求和及求平均分3. 分類基本數(shù)據(jù)類型也稱為簡(jiǎn)單數(shù)據(jù)類型。Java 語(yǔ)言有8 種簡(jiǎn)單數(shù)據(jù)類型,分別是:boolean、byte、short、int、long、float、double、char。這8 種數(shù)據(jù)類型習(xí)慣上可分為4 大類型:布爾類型:boolean;字符類型:char;整數(shù)類型:byte、short、int、long;浮點(diǎn)類型:float、double。2.1.2 基本數(shù)據(jù)類型任務(wù)2.1 學(xué)生各科成績(jī)求和及求平均分例2.1簡(jiǎn)單數(shù)據(jù)類型的例子。public class Assign public st

15、atic void main (String args ) int x, y; / 定義x,y 兩個(gè)整型變量 float z = 1.234f; / 指定變量z 為float 型,且賦初值為1.234double w = 1.234; / 指定變量w 為double 型,且賦初值為1.234boolean flag = true; / 指定變量flag 為boolean 型,且賦初值為truechar c; /定義字符型變量cc = A ; / 給字符型變量c 賦值A(chǔ)x = 12; / 給整型變量x 賦值為12y = 300; / 給整型變量y 賦值為3002.1.2 基本數(shù)據(jù)類型任務(wù)2.1

16、學(xué)生各科成績(jī)求和及求平均分4. 數(shù)據(jù)的類型轉(zhuǎn)換(1)不同類型數(shù)據(jù)間的優(yōu)先關(guān)系如下:低 高byte, short, char int long float double2.1.2 基本數(shù)據(jù)類型任務(wù)2.1 學(xué)生各科成績(jī)求和及求平均分(2)自動(dòng)類型轉(zhuǎn)換整型、浮點(diǎn)型、字符型數(shù)據(jù)可以混合運(yùn)算。運(yùn)算中,不同類型的數(shù)據(jù)先轉(zhuǎn)化為同一類型,然后進(jìn)行運(yùn)算,轉(zhuǎn)換從低級(jí)到高級(jí)。轉(zhuǎn)換關(guān)系見(jiàn)表2 - 4。2.1.2 基本數(shù)據(jù)類型任務(wù)2.1 學(xué)生各科成績(jī)求和及求平均分(3)強(qiáng)制類型轉(zhuǎn)換高級(jí)數(shù)據(jù)要轉(zhuǎn)換成低級(jí)數(shù)據(jù),需用到強(qiáng)制類型轉(zhuǎn)換,如:int i;byte b=(byte)i; / 把int 型變量i 強(qiáng)制轉(zhuǎn)換為byte 型

17、2.1.2 基本數(shù)據(jù)類型任務(wù)2.1 學(xué)生各科成績(jī)求和及求平均分例2.2程序Conversion.java 為類型轉(zhuǎn)換的例子。public class Conversion public static void main(String args)int a=127, b=9;float c=12.0f;int x;float y, z;System.out.println(a=+a+ , b=+b+ , c=+c);x=a/b; / 兩個(gè)整型相除得整型,將丟失小數(shù)部分System.out.println(a/b=+x+n);y=a/c; / 整型與浮點(diǎn)型運(yùn)行,結(jié)果為浮點(diǎn)型,Java 自動(dòng)先將a

18、轉(zhuǎn)換為浮點(diǎn)型System.out.println(a/c=+y+n);z=(float)a/c; / 強(qiáng)制將a 轉(zhuǎn)換為浮點(diǎn)型然后計(jì)算,結(jié)果與上同 System.out.println(a/c=+z+n);2.1.2 基本數(shù)據(jù)類型任務(wù)2.1 學(xué)生各科成績(jī)求和及求平均分程序運(yùn)行結(jié)果:a=127, b=9, c=12.0a/b=14a/c=10.583333a/c=10.5833332.1.2 基本數(shù)據(jù)類型任務(wù)2.1 學(xué)生各科成績(jī)求和及求平均分5. 字符串(String)(1)字符串常量的表示。字符串是用雙撇號(hào)括起的若干個(gè)字符。如abc 100001 hello! 等。(2)字符串變量的定義。Jav

19、a 語(yǔ)言提供了一個(gè)處理字符串的類String,在定義字符串變量時(shí)可以像基本類型一樣定義字符串變量。2.1.2 基本數(shù)據(jù)類型任務(wù)2.1 學(xué)生各科成績(jī)求和及求平均分String 類提供的部分構(gòu)造方法:1)String():初始化一個(gè)新創(chuàng)建的String 對(duì)象,它表示一個(gè)空字符序列。2)String(byte bytes):構(gòu)造一個(gè)新的String,方法是使用平臺(tái)的默認(rèn)字符集解碼字節(jié)的指定數(shù)組。3)String(char value, int offset, int count) :分配一個(gè)新的String,它包含來(lái)自該字符數(shù)組參數(shù)的一個(gè)子數(shù)組的字符。2.1.2 基本數(shù)據(jù)類型任務(wù)2.1 學(xué)生各科成績(jī)

20、求和及求平均分String 類提供的部分成員方法:1)int compareTo(String anotherString) :按字典順序比較兩個(gè)字符串,若相同則返回值為0。2)boolean startsWith(String prefix):測(cè)試此字符串是否以指定的前綴開(kāi)始。3)char charAt(int index):返回指定索引處的char 值。索引范圍為從0 到length()-1。序列的第一個(gè)char 值在索引0 處,第二個(gè)在索引1 處,依此類推。4)int indexOf(String str):返回第一次出現(xiàn)的指定子字符串在此字符串中的索引。5)boolean equals

21、(String another) :將此String 與另一個(gè)String 進(jìn)行比較,看兩個(gè)字符串是否相同。6)int length():返回此字符串的長(zhǎng)度。7)String toLowerCase() :使用默認(rèn)語(yǔ)言環(huán)境的規(guī)則將此String 中的所有字符都轉(zhuǎn)換為小寫。8)String toUpperCase() :使用默認(rèn)語(yǔ)言環(huán)境的規(guī)則將此String 中的所有字符都轉(zhuǎn)換為大寫。9)String substring(int beginIndex, int endIndex) :返回一個(gè)新字符串,它是此字符串的一個(gè)子字符串。該子字符串從指定的beginIndex 處開(kāi)始,一直到索引endIn

22、dex-1 處的字符。10)String trim():返回字符串的副本,忽略前導(dǎo)空白和尾部空白。2.1.2 基本數(shù)據(jù)類型任務(wù)2.1 學(xué)生各科成績(jī)求和及求平均分例2.3字符串處理用法。public class StringDemopublic static void main(String args )String stra= HELLO JAVA!;System.out.println(stra);System.out.println(length of stra is:+stra.length();System.out.println(Lower of stra is:+stra.toLo

23、werCase();程序運(yùn)行結(jié)果:HELLO JAVA!length of stra is 11Lower of stra is hello java!2.1.2 基本數(shù)據(jù)類型任務(wù)2.1 學(xué)生各科成績(jī)求和及求平均分1. 運(yùn)算符包括算術(shù)運(yùn)算符、關(guān)系運(yùn)算符、邏輯運(yùn)算符、賦值運(yùn)算符、條件運(yùn)算符等。(1)算術(shù)運(yùn)算符。數(shù)值類型的標(biāo)準(zhǔn)算術(shù)運(yùn)算符包括:+,-,*,/,%,+,-。整數(shù)除法的結(jié)果是整數(shù),如5/2 = 2 而不是2.5。運(yùn)算符% 完成取余運(yùn)算,如5%2 = 1,14%6 = 2。增量運(yùn)算符和減量運(yùn)算符:前置增量/ 減量運(yùn)算符:變量先加1 或減1,再參與表達(dá)式中的運(yùn)算。后置增量/ 減量運(yùn)算符:變量

24、先參與表達(dá)式的運(yùn)算,再加1 或減1。2.1.3 運(yùn)算符與表達(dá)式任務(wù)2.1 學(xué)生各科成績(jī)求和及求平均分(2)關(guān)系運(yùn)算符。關(guān)系運(yùn)算符包括:,=,= =,!=。關(guān)系運(yùn)算的結(jié)果為布爾型數(shù)據(jù)true 或false。關(guān)系運(yùn)算符見(jiàn)表2 - 5。2.1.3 運(yùn)算符與表達(dá)式任務(wù)2.1 學(xué)生各科成績(jī)求和及求平均分(3)邏輯運(yùn)算符。邏輯運(yùn)算的操作數(shù)必須是布爾型數(shù)據(jù),運(yùn)算符常用的有:!,&,|,。邏輯運(yùn)算符見(jiàn)表2 - 6。2.1.3 運(yùn)算符與表達(dá)式任務(wù)2.1 學(xué)生各科成績(jī)求和及求平均分(4)賦值運(yùn)算符。賦值運(yùn)算符為:=,其擴(kuò)展賦值運(yùn)算符有:+=,-=,*=,/= 等。(5)條件運(yùn)算符。條件運(yùn)算符? :的作用是條件判斷

25、,相當(dāng)于一個(gè)if-else 語(yǔ)句。條件運(yùn)算符為三元運(yùn)算符。其一般形式為: ? : 為條件表達(dá)式,為真值,則取表達(dá)式1 作為運(yùn)算結(jié)果值,否則取表達(dá)式2 為運(yùn)算結(jié)果值。2.1.3 運(yùn)算符與表達(dá)式任務(wù)2.1 學(xué)生各科成績(jī)求和及求平均分(6)運(yùn)算符的優(yōu)先級(jí)2.1.3 運(yùn)算符與表達(dá)式任務(wù)2.1 學(xué)生各科成績(jī)求和及求平均分2. 表達(dá)式表達(dá)式是由一系列的常量、變量、方法調(diào)用、運(yùn)算符組合而成的語(yǔ)句。它執(zhí)行這些元素指定的計(jì)算并返回結(jié)果。在對(duì)一個(gè)表達(dá)式進(jìn)行計(jì)算時(shí),要按照運(yùn)算符的優(yōu)先級(jí)別從高到低進(jìn)行,同一級(jí)別的運(yùn)算按結(jié)合方向進(jìn)行,為了使表達(dá)式結(jié)構(gòu)清晰,建議適當(dāng)使用“ ()”。當(dāng)兩個(gè)操作數(shù)類型不一致時(shí)要注意類型轉(zhuǎn)換問(wèn)

26、題。2.1.3 運(yùn)算符與表達(dá)式任務(wù)2.1 學(xué)生各科成績(jī)求和及求平均分例2.4表達(dá)式綜合舉例。public class OutHellopublic static void main(String args ) /* 字符串跟任意類型數(shù)據(jù)相加,均把其他類型數(shù)據(jù)轉(zhuǎn)換為字符串后再進(jìn)行加運(yùn)算*/int a=12, b=9;double c=3.5;System.out.println(a=+a+ , b=+b+ , c=+c);a+=b; / 計(jì)算a+b 并賦給aSystem.out.println(a+=b:+a); / 輸出a+b,即此時(shí)的aa%=b; /計(jì)算a%b 并賦給aSystem.out.

27、println(a%=b:+a); / 輸出(a+b)%b,此時(shí)的ac+=+a; / 計(jì)算c+(a+1) 并賦給c,注意其中類型轉(zhuǎn)換問(wèn)題,此時(shí)a 也自增1 System.out.println(a=+a+ , c=+c);程序運(yùn)行結(jié)果:a=12, b=9, c=3.5a+=b:21a%=b:3a=4, c=7.52.1.3 運(yùn)算符與表達(dá)式任務(wù)2.1 學(xué)生各科成績(jī)求和及求平均分1. Scanner 類的使用Scanner 類可以創(chuàng)建一個(gè)輸入對(duì)象,該類在java.util 包中。Scanner reader=new Scanner(System.in);/ System.in 可指鍵盤對(duì)象以上語(yǔ)句

28、可生成一個(gè)Scanner 類對(duì)象reader,然后借助reader 對(duì)象調(diào)用Scanner 類中的方法可實(shí)現(xiàn)讀入各種類型數(shù)據(jù)。讀入數(shù)據(jù)的方法如:nextInt():讀入一個(gè)整型數(shù)據(jù)。nextFloat():讀入一個(gè)單精度浮點(diǎn)數(shù)。nextLine():讀入一個(gè)字符串。2.1.4 通過(guò)控制臺(tái)輸入輸出數(shù)據(jù)任務(wù)2.1 學(xué)生各科成績(jī)求和及求平均分例2.5輸入兩個(gè)整數(shù),求兩個(gè)數(shù)的和輸出。import java.util.*;public class InputDemopublic static void main(String args)int x, y;System.out.print( 請(qǐng)輸入兩個(gè)整數(shù)

29、:);Scanner reader=new Scanner(System.in);x=reader.nextInt();y=reader.nextInt();System.out.print( 和為:+(x+y);程序運(yùn)行結(jié)果:請(qǐng)輸入兩個(gè)整數(shù):5 7和為:122.1.4 通過(guò)控制臺(tái)輸入輸出數(shù)據(jù)任務(wù)2.1 學(xué)生各科成績(jī)求和及求平均分2. 程序的編寫規(guī)范(1)Java 注釋。1)行注釋:行注釋以/ 開(kāi)始,以行結(jié)束符(回車或換行)結(jié)束,作用范圍是/ 注釋符及以后一行的內(nèi)容,通常在注釋內(nèi)容較少時(shí)使用。如:int num;/ 聲明變量2)塊注釋:塊注釋以/* 開(kāi)始,以*/ 結(jié)束,作用范圍是/* 和*/

30、之間的內(nèi)容,可以是一行,也可以是多行。如:int num=10; /* 聲明變量,并直接賦值*/3)文檔注釋:文檔注釋以/* 開(kāi)始,以*/ 結(jié)束,作用范圍是/* 和*/ 之間的內(nèi)容,之所以被稱為文檔注釋,是因?yàn)檫@種注釋可以被javadoc 搜尋并編譯成程序開(kāi)發(fā)文檔。2.1.4 通過(guò)控制臺(tái)輸入輸出數(shù)據(jù)任務(wù)2.1 學(xué)生各科成績(jī)求和及求平均分2. 程序的編寫規(guī)范(2)代碼編寫格式規(guī)范。1)縮進(jìn):縮進(jìn)應(yīng)該是每行2 個(gè)空格,不要在源文件中保存Tab 字符。在使用不同的源代碼管理工具時(shí)Tab 字符將因?yàn)橛脩粼O(shè)置的不同而擴(kuò)展為不同的寬度。2) 對(duì)的使用:、 總是成對(duì)出現(xiàn), 語(yǔ)句永遠(yuǎn)單獨(dú)作為一行,同時(shí)注意縮進(jìn)

31、對(duì)齊。例如:if (i0) i +;3)括號(hào)的使用:一般而言,在含有多種運(yùn)算符的表達(dá)式中使用圓括號(hào)來(lái)避免運(yùn)算符優(yōu)先級(jí)問(wèn)題,是個(gè)好方法。即使運(yùn)算符的優(yōu)先級(jí)對(duì)你而言可能很清楚了,但對(duì)其他人未必如此。例如:if (a = b) & (c = d)2.1.4 通過(guò)控制臺(tái)輸入輸出數(shù)據(jù)任務(wù)2.1 學(xué)生各科成績(jī)求和及求平均分2. 程序的編寫規(guī)范(3)命名規(guī)范。1)變量名、對(duì)象名、方法名,均采用大小寫混合的方式,第一個(gè)單詞的首字母小寫,其后單詞的首字母大寫。變量名不應(yīng)以下劃線或美元符號(hào)開(kāi)頭,盡管這在語(yǔ)法上是允許的。如:float myWidth;int_employeeId;2)類名、接口命名規(guī)則。類名、接口

32、名是一個(gè)名詞,采用大小寫混合的方式,每個(gè)單詞的首字母大寫,盡量使你的類名簡(jiǎn)潔而富于描述。例如:class Rasterclass ImageSpriteinterface RasterDelegateinterface Storing2.1.4 通過(guò)控制臺(tái)輸入輸出數(shù)據(jù)任務(wù)2.1 學(xué)生各科成績(jī)求和及求平均分任務(wù)2.2 學(xué)生成績(jī)統(tǒng)計(jì)任務(wù)2.2 學(xué)生成績(jī)統(tǒng)計(jì) 在成績(jī)管理系統(tǒng)中,有多名同學(xué)的計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)、Java 程序設(shè)計(jì)、數(shù)據(jù)庫(kù)技術(shù)課程成績(jī)需要從鍵盤輸入,當(dāng)輸入一名同學(xué)的全部課程成績(jī)后才能輸入下一名同學(xué)的全部課程成績(jī),當(dāng)所有同學(xué)的成績(jī)都輸入完成后自動(dòng)統(tǒng)計(jì)輸出三門課程成績(jī)均在90 分以上的人數(shù)?!救?/p>

33、務(wù)情境】【任務(wù)實(shí)現(xiàn)】 import java.util.*;public class CountDemopublic static void main(String args) int count=0;int network, java, database;int N=3;Scanner reader=new Scanner(System.in);for(int i=1; i=90&java=90&database=90) / 此處用了分支語(yǔ)句count+;System.out.print( 三門課成績(jī)均在90 分以上的人數(shù)有+count+ 人);任務(wù)2.2 學(xué)生成績(jī)統(tǒng)計(jì)【任務(wù)實(shí)現(xiàn)】 程序運(yùn)行

34、結(jié)果:請(qǐng)輸入第1 名同學(xué)的三門課成績(jī):87 96 89請(qǐng)輸入第2 名同學(xué)的三門課成績(jī):92 95 90請(qǐng)輸入第3 名同學(xué)的三門課成績(jī):87 98 91三門課成績(jī)均在90 分以上的人數(shù)有1 人 要統(tǒng)計(jì)各門課成績(jī)均在90 分以上的人數(shù),解題思路為輸入3 門課成績(jī),則馬上判斷這3 門課成績(jī)是否均在90 分以上,如果均在90 分以上則統(tǒng)計(jì),這就用到分支結(jié)構(gòu)。由于每名學(xué)生都要輸入三門課成績(jī)并統(tǒng)計(jì),因此輸入數(shù)據(jù)并判斷成績(jī)是否符合統(tǒng)計(jì)條件是重復(fù)執(zhí)行的語(yǔ)句組,這就用到循環(huán)結(jié)構(gòu)?!救蝿?wù)分析】任務(wù)2.2 學(xué)生成績(jī)統(tǒng)計(jì) 1. if-else 語(yǔ)句if-else 語(yǔ)句的基本語(yǔ)法:if () else 2.2.1 分支

35、語(yǔ)句任務(wù)2.2 學(xué)生成績(jī)統(tǒng)計(jì) 例2.6隨機(jī)產(chǎn)生一個(gè)100 以內(nèi)的整數(shù),判斷是否大于50。public class IfElseDemo public static void main(String args) double a=Math.random()*100; / 產(chǎn)生一個(gè)100 以內(nèi)的隨機(jī)數(shù)并賦給aSystem.out.println(a=+a);if (a50)System.out.println(a50!); / 輸出a50elseSystem.out.println(a=50!); / 輸出a=502.2.1 分支語(yǔ)句任務(wù)2.2 學(xué)生成績(jī)統(tǒng)計(jì)2. switch 語(yǔ)句switch 語(yǔ)

36、句的基本語(yǔ)法:switch ()case:break;case:break;default:break;2.2.1 分支語(yǔ)句任務(wù)2.2 學(xué)生成績(jī)統(tǒng)計(jì)例2.7實(shí)現(xiàn)給學(xué)生成績(jī)分級(jí),90 100 為A 級(jí),80 89 為B 級(jí),70 79 為C級(jí),60 69 為D 級(jí),0 59 為E 級(jí)。public class SwitchDemo public static void main(String args) int score=(int)(Math.random()*101);/ 產(chǎn)生一個(gè)100 以內(nèi)的隨機(jī)數(shù)并賦給a, 模擬學(xué)生成績(jī)System.out.println(Your mark is +a

37、);switch (score/10)case 10:case 9:System.out.println(You are excellent!Your grade is A.); / 輸出Abreak;case 8:System.out.println(Your grade is B.); / 輸出Bbreak;case 7:System.out.println(Your grade is C.); / 輸出Cbreak;case 6:System.out.println(You should make an extra effort!Your grade is D.);break;defau

38、lt:System.out.println(I am sorry!Your grade is E.);break;2.2.1 分支語(yǔ)句任務(wù)2.2 學(xué)生成績(jī)統(tǒng)計(jì)程序運(yùn)行結(jié)果:Your mark is 65You should make an extra effort !Your grade is D.2.2.1 分支語(yǔ)句任務(wù)2.2 學(xué)生成績(jī)統(tǒng)計(jì)1. for 循環(huán)for 循環(huán)的語(yǔ)法:for (;);2.2.2 循環(huán)語(yǔ)句任務(wù)2.2 學(xué)生成績(jī)統(tǒng)計(jì)例2.8用for 循環(huán)打印“九九”乘法表。public class ForDemo public static void main(String args)f

39、or(int i=1; i=9; i+)for(int j=1; j=i; j+)System.out.print(i+*+j+=+i*j+,);System.out.println();/ 換行2.2.2 循環(huán)語(yǔ)句任務(wù)2.2 學(xué)生成績(jī)統(tǒng)計(jì)程序運(yùn)行結(jié)果:1*1=1,2*1=2, 2*2=4,3*1=3, 3*2=6, 3*3=9,4*1=4, 4*2=8, 4*3=12, 4*4=16,5*1=5, 5*2=10, 5*3=15, 5*4=20, 5*5=25,6*1=6, 6*2=12, 6*3=18, 6*4=24, 6*5=30, 6*6=36,7*1=7, 7*2=14, 7*3=21

40、, 7*4=28, 7*5=35, 7*6=42, 7*7=49,8*1=8, 8*2=16, 8*3=24, 8*4=32, 8*5=40, 8*6=48, 8*7=56, 8*8=64,9*1=9, 9*2=18, 9*3=27, 9*4=36, 9*5=45, 9*6=54, 9*7=63, 9*8=72, 9*9=81,2.2.2 循環(huán)語(yǔ)句任務(wù)2.2 學(xué)生成績(jī)統(tǒng)計(jì)2. while 循環(huán)while 循環(huán)的語(yǔ)法:while ();2.2.2 循環(huán)語(yǔ)句任務(wù)2.2 學(xué)生成績(jī)統(tǒng)計(jì)例2.9用while 循環(huán)打印“九九”乘法表。public class WhileDemo public static

41、 void main(String args) int i=1;while(i=9)int j=1;while(j=i)System.out.print(i+*+j+=+i*j+,);j+;System.out.println();i+;2.2.2 循環(huán)語(yǔ)句任務(wù)2.2 學(xué)生成績(jī)統(tǒng)計(jì)3. do-while 循環(huán)do-while 循環(huán)的語(yǔ)法:;do; while ();2.2.2 循環(huán)語(yǔ)句任務(wù)2.2 學(xué)生成績(jī)統(tǒng)計(jì)例2.10求e 的近似值,e=1+1/1+1/2!+1/3!+。public class Examplepublic static void main (String args ) dou

42、ble sum=0, item=1;int i=1;do sum=sum+item;i+;item=item*(1.0/i) ; while(i=1000);sum=sum+1;System.out.println(e=+sum);程序運(yùn)行結(jié)果:e=2.71828182845904552.2.2 循環(huán)語(yǔ)句任務(wù)2.2 學(xué)生成績(jī)統(tǒng)計(jì)1. break 語(yǔ)句break 語(yǔ)句用于從switch 語(yǔ)句、循環(huán)語(yǔ)句和標(biāo)記塊中提前退出。前面switch 語(yǔ)句中,已經(jīng)用到過(guò)。在程序調(diào)試過(guò)程中,break 語(yǔ)句可以用來(lái)設(shè)置斷點(diǎn)。break 語(yǔ)句后可以帶標(biāo)簽也可以不帶標(biāo)簽。2. continue 語(yǔ)句continue

43、 語(yǔ)句用于跳過(guò)并跳到循環(huán)體最后,然后將控制返回到循環(huán)控制語(yǔ)句處。continue 語(yǔ)句后可以帶標(biāo)簽也可以不帶標(biāo)簽。3. 標(biāo)記塊語(yǔ)句標(biāo)記塊語(yǔ)句格式為::其中l(wèi)abel 為標(biāo)簽名,break 語(yǔ)句和continue 語(yǔ)句可以引用此標(biāo)簽名。4. return 語(yǔ)句return 語(yǔ)句嚴(yán)格說(shuō)不是跳轉(zhuǎn)語(yǔ)句,它是方法的返回語(yǔ)句,它能使程序控制返回到調(diào)用它的方法。2.2.3 跳轉(zhuǎn)語(yǔ)句任務(wù)2.2 學(xué)生成績(jī)統(tǒng)計(jì)例2.11分兩行輸出1 10 這10 個(gè)數(shù),每行5 個(gè)。class ContinueDemo public static void main(String args) for (int count = 1;

44、 count = 10; count+) if (count = 5) System.out.println( +count);continue; System.out.print( +count);程序運(yùn)行結(jié)果:1 2 3 4 56 7 8 9 102.2.3 跳轉(zhuǎn)語(yǔ)句任務(wù)2.2 學(xué)生成績(jī)統(tǒng)計(jì)任務(wù)2.3 學(xué)生成績(jī)排序任務(wù)2.3 學(xué)生成績(jī)排序 在成績(jī)管理系統(tǒng)中,有多名同學(xué)的計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)、Java 程序設(shè)計(jì)、數(shù)據(jù)庫(kù)技術(shù)課程成績(jī)需要從鍵盤輸入,當(dāng)輸入完各名同學(xué)的各科成績(jī)后,把各同學(xué)的成績(jī)算出總分并按降序排序?!救蝿?wù)情境】【任務(wù)實(shí)現(xiàn)】 import java.util.*;public class

45、 Sortpublic static void main(String args) int total;int N=3;int score=new intN4; / 定義數(shù)組int t=new int4;Scanner reader=new Scanner(System.in);for(int i=0; iN; i+) total=0;System.out.println( 請(qǐng)輸入第+(i+1)+ 個(gè)學(xué)生的三門成績(jī):);for(int j=0; j3; j+) scoreij=reader.nextInt(); / 使用數(shù)組元素total=total+scoreij;任務(wù)2.3 學(xué)生成績(jī)排序【

46、任務(wù)實(shí)現(xiàn)】scorei3=total;for(int i=1; i=0; j-) if(scorei3scorej3) / 控制行數(shù)據(jù)的交換t=scorei;scorei=scorej;scorej=t;System.out.println( 按總分排序后的成績(jī):);for(int i=0; iN; i+)System.out.println(scorei0+ +scorei1+ +scorei2+ +scorei3);任務(wù)2.3 學(xué)生成績(jī)排序【任務(wù)實(shí)現(xiàn)】程序運(yùn)行結(jié)果:請(qǐng)輸入第1 個(gè)學(xué)生的三門成績(jī):78 89 85請(qǐng)輸入第2 個(gè)學(xué)生的三門成績(jī):92 89 83請(qǐng)輸入第3 個(gè)學(xué)生的三門成績(jī):78

47、 83 91按總分排序后的成績(jī):92 89 83 26478 89 85 25278 83 91 252 要把多個(gè)學(xué)生的總成績(jī)排序,考慮到如果用原先存儲(chǔ)單個(gè)學(xué)生的幾門課成績(jī)定義幾個(gè)變量,則對(duì)該項(xiàng)目來(lái)說(shuō)定義的變量數(shù)將會(huì)大增,不利于程序員書(shū)寫與閱讀程序,因此引入數(shù)組,專門解決存儲(chǔ)大量成績(jī)數(shù)據(jù)的問(wèn)題?!救蝿?wù)分析】任務(wù)2.3 學(xué)生成績(jī)排序 1. 一維數(shù)組的聲明一維數(shù)組的聲明有下列幾種方式:(1)數(shù)據(jù)類型數(shù)組名 ;例如:int a ; float b ;(2)數(shù)據(jù)類型 數(shù)組名;例如:int age; String name;數(shù)組元素的類型可以是Java 的任何一種類型。假如已經(jīng)定義了一個(gè)People 類

48、型,那么可以聲明一個(gè)數(shù)組:People student;則數(shù)組student 中的元素是People 類型的數(shù)據(jù)。2.3.1 一維數(shù)組任務(wù)2.3 學(xué)生成績(jī)排序 2. 創(chuàng)建數(shù)組聲明數(shù)組僅是給出了數(shù)組名字和元素的數(shù)據(jù)類型,要想真正使用數(shù)組還必須為它分配內(nèi)存空間,即創(chuàng)建數(shù)組。在為數(shù)組分配內(nèi)存空間時(shí)必須指明數(shù)組的長(zhǎng)度。為數(shù)組分配內(nèi)存空間的格式如下:數(shù)組名 =new 數(shù)據(jù)類型 元素個(gè)數(shù);例如:int score =new int30; /score 中每個(gè)元素的默認(rèn)值為0String StudentName =new String 50; /StudentName 中每個(gè)元素的默認(rèn)值為null2.3.1

49、 一維數(shù)組任務(wù)2.3 學(xué)生成績(jī)排序3. 一維數(shù)組的初始化數(shù)組初始化是定義數(shù)組時(shí)同時(shí)為各元素賦初值的工作,初始化工作很重要,不要使用任何未初始化的數(shù)組。數(shù)組a 的初始化:int a=3, 5, 7, 9, 11;則一維數(shù)組a 的內(nèi)存模型如圖2 - 5 所示。2.3.1 一維數(shù)組任務(wù)2.3 學(xué)生成績(jī)排序4. 數(shù)組元素的引用數(shù)組的引用即為引用數(shù)組中的元素,通過(guò)指定下標(biāo)來(lái)引用一維數(shù)組。Java 數(shù)組的下標(biāo)從0 開(kāi)始,引用時(shí)不能越界。數(shù)組元素的個(gè)數(shù)作為數(shù)組對(duì)象的一部分被存儲(chǔ)在length 屬性中,數(shù)組元素的個(gè)數(shù)一旦確定,便不可修改。一維數(shù)組的引用格式如下:數(shù)組名 下標(biāo);2.3.1 一維數(shù)組任務(wù)2.3 學(xué)

50、生成績(jī)排序例2.12用一維數(shù)組元素計(jì)算Fibonacci 序列值。publicclass Fib_array public static void main(String args) int fib=new int20;int i, n=20;fib0=0;fib1=1;for(i=2; ifib.length; i+)fibi=fibi-1+fibi-2;for(i=0; ifib.length; i+)System.out.print( +fibi);程序運(yùn)行結(jié)果:0 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 4181

51、2.3.1 一維數(shù)組任務(wù)2.3 學(xué)生成績(jī)排序5. 一維數(shù)組的復(fù)制Java 編程語(yǔ)言在System 類中提供了一種特殊方法復(fù)制數(shù)組,該方法為arraycopy()。其作用是從指定源數(shù)組中復(fù)制一組數(shù)據(jù)到目標(biāo)數(shù)組。arraycopy() 的參數(shù)格式為:arraycopy(Object src, int srcPos, Object dest, int destPos, int length)2.3.1 一維數(shù)組任務(wù)2.3 學(xué)生成績(jī)排序1. 二維數(shù)組的聲明二維數(shù)組的聲明有下列幾種方式:數(shù)據(jù)類型數(shù)組名 ;例如:int Score ;數(shù)據(jù)類型 數(shù)組名;例如:int Score;2.3.2 二維數(shù)組任務(wù)2.

52、3 學(xué)生成績(jī)排序2. 創(chuàng)建二維數(shù)組為二維數(shù)組分配內(nèi)存空間的格式如下:數(shù)組名 =new 數(shù)據(jù)類型 元素個(gè)數(shù)1 元素個(gè)數(shù)2 3. 二維數(shù)組的初始化二維數(shù)組初始化比一維數(shù)組要復(fù)雜些,不過(guò)方式與一維的類似。例如:int SidScore=1, 68, 79, 90, 2, 88, 75, 60, 3, 75, 73;/ 第二維元素個(gè)數(shù)可不同4. 二維數(shù)組的引用二維數(shù)組元素的行數(shù)和列數(shù)作為數(shù)組對(duì)象分別被存儲(chǔ)在各length 屬性中,arrayName.length 用于獲取二維數(shù)組行數(shù),arrayNamei.length 用于獲取第i 行的列數(shù)。二維數(shù)組的引用格式如下:數(shù)組名 下標(biāo)1 下標(biāo)2;2.3.2

53、 二維數(shù)組任務(wù)2.3 學(xué)生成績(jī)排序例2.13輸入學(xué)生的各門課成績(jī)后輸出,并輸出總成績(jī)。import java.util.*;publicclass ScoreSortpublic static void main(String args) int total;int N=3;int score=new intN4;int t=new int4;Scanner reader=new Scanner(System.in);for(int i=0; iN; i+) total=0;System.out.println( 請(qǐng)輸入第+(i+1)+ 個(gè)學(xué)生的三門成績(jī):);for(int j=0; j3;

54、j+) scoreij=reader.nextInt();total=total+scoreij;scorei3=total;2.3.2 二維數(shù)組任務(wù)2.3 學(xué)生成績(jī)排序System.out.println( 輸出各門課成績(jī)及總成績(jī):);for(int i=0; iN; i+)System.out.println(scorei0+ +scorei1+ +scorei2+ +scorei3);程序運(yùn)行結(jié)果:請(qǐng)輸入第1 個(gè)學(xué)生的三門成績(jī):82 92 89請(qǐng)輸入第2 個(gè)學(xué)生的三門成績(jī):91 93 87請(qǐng)輸入第3 個(gè)學(xué)生的三門成績(jī):93 96 88輸出各門課成績(jī)及總成績(jī):82 92 89 26391

55、93 87 27193 96 88 2772.3.2 二維數(shù)組任務(wù)2.3 學(xué)生成績(jī)排序任務(wù)2.4 菜單使用任務(wù)2.4菜單使用 在成績(jī)管理系統(tǒng)中,有成績(jī)計(jì)算、成績(jī)統(tǒng)計(jì)、成績(jī)排序等功能,用戶可根據(jù)需要選擇某項(xiàng)功能,為使用戶交互方便,可以定義并使用菜單功能?!救蝿?wù)情境】【任務(wù)實(shí)現(xiàn)】 publicclass XScjgl public static void main(String args ) cjlr(); / 調(diào)用成績(jī)錄入模塊System.out.println( 成績(jī)查詢1);System.out.println( 成績(jī)排序2);System.out.println( 退出程序0);Syste

56、m.out.print( 請(qǐng)選擇:);int s=sc.nextInt();switch (s)case 1:cjcx(); / 調(diào)用成績(jī)查詢模塊break;case 2:cjpx(); / 調(diào)用成績(jī)排序模塊break;default:System.out.println( 退出程序OK);任務(wù)2.4菜單使用【任務(wù)實(shí)現(xiàn)】 / 成績(jī)錄入模塊public static void cjlr() / 成績(jī)錄入代碼(略).public static void cjcx()/ 按學(xué)號(hào)查找模塊(代碼略)public static void cjpx()/ 按總分升序排序模塊(代碼略)程序運(yùn)行結(jié)果:成績(jī)查詢1

57、成績(jī)排序2退出程序0請(qǐng)選擇: 此程序框架中先調(diào)用成績(jī)錄入模塊的功能,完成成績(jī)錄入,再根據(jù)用戶的選擇,根據(jù)提示由用戶決定進(jìn)行成績(jī)查詢、成績(jī)排序或退出程序。其中的每個(gè)模塊都對(duì)應(yīng)一個(gè)方法,本程序在main() 方法中根據(jù)需要調(diào)用其他的方法,涉及了方法的定義與調(diào)用知識(shí)?!救蝿?wù)分析】任務(wù)2.4菜單使用 方法是來(lái)完成子程序或者某個(gè)模塊的功能。有主程序或者其他方法調(diào)用,其他方法之間可以相互調(diào)用。同一方法可以被一個(gè)或多個(gè)方法任意次調(diào)用。說(shuō)明:(1)一個(gè)Java 程序的執(zhí)行是從main 方法開(kāi)始,也是在main 方法中結(jié)束整個(gè)程序。(2)一個(gè)Java 程序中可有多個(gè)方法,所有方法是平行的,即在定義方法時(shí)是分別進(jìn)

58、行的,是互相獨(dú)立的。(3)方法之間可以相互調(diào)用,但不能調(diào)用main 方法,main 方法是系統(tǒng)調(diào)用的。2.4.1 方法概念任務(wù)2.4菜單使用 1. 無(wú)參方法的定義與調(diào)用(1)定義void 方法名()聲明部分語(yǔ)句部分(2)方法的調(diào)用方法名();2.4.2 方法的幾種基本形式任務(wù)2.4菜單使用例2.14編寫一個(gè)程序,有菜單輸出功能,菜單項(xiàng)之間用“”分隔。public class OutMenupublic static void main(String args)System.out.println( 程序功能:);OutXing();System.out.println(1:輸入數(shù)據(jù));OutX

59、ing();System.out.println(2:計(jì)算);OutXing();System.out.println(3:輸出結(jié)果);static void OutXing() int i;for (i = 1; i = 15; i+)System.out.print(*);System.out.println();2.4.2 方法的幾種基本形式任務(wù)2.4菜單使用程序運(yùn)行結(jié)果:程序功能:*1:輸入數(shù)據(jù)*2:計(jì)算*3:輸出結(jié)果2.4.2 方法的幾種基本形式任務(wù)2.4菜單使用2. 有參方法的定義與調(diào)用(1)定義void 方法名(形參列表)聲明部分語(yǔ)句部分(2)方法的調(diào)用方法名(實(shí)參列表);注意:

60、每個(gè)形參必須分別定義類型,形參定義類型必須與實(shí)參類型一致。2.4.2 方法的幾種基本形式任務(wù)2.4菜單使用例2.15求鍵盤輸入兩個(gè)整數(shù),調(diào)用求和的方法輸出兩數(shù)和。import java.util.*;public class CalSumpublic static void main(String args)int x, y;Scanner s=new Scanner(System.in);System.out.println( 請(qǐng)輸入兩個(gè)加數(shù):);x = s.nextInt();y = s.nextInt();Sum(x, y);static void Sum(int a, int b)in

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論