工學(xué)Java龔永罡答案_第1頁(yè)
工學(xué)Java龔永罡答案_第2頁(yè)
工學(xué)Java龔永罡答案_第3頁(yè)
工學(xué)Java龔永罡答案_第4頁(yè)
工學(xué)Java龔永罡答案_第5頁(yè)
已閱讀5頁(yè),還剩71頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、Java語(yǔ)言程序設(shè)計(jì)基礎(chǔ)教程上機(jī)實(shí)驗(yàn)指導(dǎo)手冊(cè)實(shí)驗(yàn)一Java環(huán)境演練【目的】安裝并配置Java運(yùn)行開(kāi)發(fā)環(huán)境;掌握開(kāi)發(fā)Java應(yīng)用程序的3個(gè)步驟:編寫(xiě)源文件、編譯源文件和運(yùn)行應(yīng)用程序;掌握開(kāi)發(fā)Java Applet程序的3個(gè)步驟:編寫(xiě)源文件、編譯源文件和運(yùn)行Java Applet程序;學(xué)習(xí)同時(shí)編譯多個(gè)Java源文件?!緝?nèi)容】1一個(gè)簡(jiǎn)單的應(yīng)用程序² 實(shí)驗(yàn)要求:編寫(xiě)一個(gè)簡(jiǎn)單的Java應(yīng)用程序,該程序在命令行窗口輸出兩行文字:“你好,很高興學(xué)習(xí)Java”和“We are students”。² 程序運(yùn)行效果示例:程序運(yùn)行效果如下圖所示:² 程序模板: Hello.javap

2、ublic class Hello public static void main (String args ) 【代碼1】 /命令行窗口輸出"你好,很高興學(xué)習(xí)Java" A a=new A(); a.fA(); class A void fA() 【代碼2】 /命令行窗口輸出"We are students" ² 實(shí)驗(yàn)后的練習(xí):1 編譯器怎樣提示丟失大括號(hào)的錯(cuò)誤?2 編譯器怎樣提示語(yǔ)句丟失分號(hào)的錯(cuò)誤?3 編譯器怎樣提示將System寫(xiě)成system這一錯(cuò)誤?4 編譯器怎樣提示將String寫(xiě)成string這一錯(cuò)誤?2一個(gè)簡(jiǎn)單的Java App

3、let程序 ² 實(shí)驗(yàn)要求:編寫(xiě)一個(gè)簡(jiǎn)單的Java Applet程序,并在Java Applet中寫(xiě)兩行文字:“這是一個(gè)Java Applet程序”和“我改變了字體”。² 程序運(yùn)行效果示例:程序運(yùn)行效果如下圖所示:² 程序模板:FirstApplet.javaimport java.applet.*; import java.awt.*;public class FirstApplet extends Applet public void paint(Graphics g) g.setColor(Color.blue); 【代碼1】/在Java Applet中繪制一

4、行文字:“這是一個(gè)Java Applet 程序” g.setColor(Color.red); g.setFont(new Font("宋體",Font.BOLD,36); 【代碼2】/在Java Applet中繪制一行文字:“我改變了字體” ² 實(shí)驗(yàn)后的練習(xí):5 程序中的主類(lèi)如果不用public修飾,編譯能通過(guò)嗎?6 程序中的主類(lèi)如果不用public修飾,程序能正確運(yùn)行嗎?7 程序?qū)aint方法誤寫(xiě)成Paint,編譯能通過(guò)么?8 程序?qū)aint方法誤寫(xiě)成Paint,運(yùn)行時(shí)能看到有關(guān)的輸出信息嗎?3聯(lián)合編譯² 實(shí)驗(yàn)要求:編寫(xiě)4個(gè)源文件:Hello.j

5、ava、A.java、B.java和C.java,每個(gè)源文件只有一個(gè)類(lèi),Hello.java是一個(gè)應(yīng)用程序(含有main方法),使用了A、B和C類(lèi)。將4個(gè)源文件保存到同一目錄中,例如:C:100,然后編譯Hello.java。² 程序運(yùn)行效果示例:程序運(yùn)行效果如下圖所示:² 程序模板:模板1:Hello.javapublic class MainClass public static void main (String args ) 【代碼1】 /命令行窗口輸出"你好,只需編譯我" A a=new A(); a.fA(); B b=new B(); b.

6、fB(); 模板2 :A.javapublic class A void fA() 【代碼2】 /命令行窗口輸出"I am A" 模板3 :B.javapublic class B void fB() 【代碼3】 /命令行窗口輸出"I am B" 模板4 :C.javapublic class C void fC() 【代碼4】 /命令行窗口輸出"I am C" ² 實(shí)驗(yàn)后的練習(xí):9 將Hello.java編譯通過(guò)后,不斷修改A.java源文件中的代碼,比如,在命令行窗口輸出“我是A類(lèi)”或“我被修改了”。要求每次修改A.ja

7、va源文件后,單獨(dú)編譯A.java,然后直接運(yùn)行應(yīng)用程序Hello。10 如果需要編譯某個(gè)目錄下的全部Java源文件,比如C:1000目錄,可以使用如下命令:c:1000javac *.java【結(jié)果】將本次上機(jī)實(shí)驗(yàn)結(jié)果按照以上內(nèi)容依次填寫(xiě)實(shí)驗(yàn)?zāi)繕?biāo)、過(guò)程、結(jié)果?!咀⒁馐马?xiàng)】 實(shí)驗(yàn)報(bào)告要求每人提交一份,使用專(zhuān)門(mén)的報(bào)告紙,內(nèi)容寫(xiě)全,包括實(shí)驗(yàn)名稱(chēng)、班級(jí)、姓名、同組人,試驗(yàn)日期、交報(bào)告日期等。 報(bào)告不需要填寫(xiě)源代碼,只要將完成情況和所有練習(xí)題結(jié)果寫(xiě)上就可以。【思考題】實(shí)驗(yàn)二Java基本數(shù)據(jù)類(lèi)型與控制語(yǔ)句【目的】 掌握char型數(shù)據(jù)和int型數(shù)據(jù)之間的相互轉(zhuǎn)換,同時(shí)了解unicode字符表; 掌握使用i

8、felse if多分支語(yǔ)句; 使用ifelse分支和while循環(huán)語(yǔ)句解決問(wèn)題?!緝?nèi)容】1輸出希臘字母表。² 實(shí)驗(yàn)要求:編寫(xiě)一個(gè)Java應(yīng)用程序,該程序在命令行窗口輸出希臘字母表。² 程序運(yùn)行效果示例:程序運(yùn)行效果如下圖所示:² 程序模板:GreekAlphabet.javapublic class GreekAlphabet public static void main (String args ) int startPosition=0,endPosition=0; char cStart='',cEnd='' 【代碼1】 /

9、cStart做int型轉(zhuǎn)換據(jù)運(yùn)算,并將結(jié)果賦值給startPosition 【代碼2】 /cEnd做int型轉(zhuǎn)換運(yùn)算,并將結(jié)果賦值給endPosition System.out.println("希臘字母''在unicode表中的順序位置:"+(int)c); System.out.println("希臘字母表:"); for(int i=startPosition;i<=endPosition;i+) char c='0' 【代碼3】 /i做char型轉(zhuǎn)換運(yùn)算,并將結(jié)果賦值給c System.out.print(&

10、quot; "+c);if(i-startPosition+1)%10=0) System.out.println(""); ² 實(shí)驗(yàn)后的練習(xí):1 將一個(gè)double型數(shù)據(jù)直接賦值給float型變量,程序編譯時(shí)提示怎樣的錯(cuò)誤?2 在應(yīng)用程序的main方法中增加語(yǔ)句:float x=0.618;程序能編譯通過(guò)么? 3 在應(yīng)用程序的main方法中增加語(yǔ)句:byte y=128;程序能編譯通過(guò)么? 4 在應(yīng)用程序的main方法中增加語(yǔ)句:int z=(byte)128;程序輸出變量z的值是多少? 2回文數(shù)。² 實(shí)驗(yàn)要求:編寫(xiě)一個(gè)Java應(yīng)用程序。用戶(hù)

11、從鍵盤(pán)輸入一個(gè)19999之間的數(shù),程序?qū)⑴袛噙@個(gè)數(shù)是幾位數(shù),并判斷這個(gè)數(shù)是否是回文數(shù)?;匚臄?shù)是指將該數(shù)含有的數(shù)字逆序排列后得到的數(shù)和原數(shù)相同,例如12121、3223都是回文數(shù)。² 程序運(yùn)行效果示例:程序運(yùn)行效果如下圖所示:² 程序模板:Number.javaimport javax.swing.JOptionPane;public class Number public static void main(String args) int number=0,d5,d4,d3,d2,d1; String str=JOptionPane.showInputDialog(&quo

12、t;輸入一個(gè)1至99999之間的數(shù)"); number=Integer.parseInt(str); if(【代碼1】) /判斷number在1至99999之間的條件 【代碼2】 /計(jì)算number的最高位(萬(wàn)位)d5 【代碼3】 /計(jì)算number的千位d4 【代碼4】 /計(jì)算number的百位d3 d2=number%100/10; d1=number%10; if(【代碼5】) /判斷number是5位數(shù)的條件 System.out.println(number+"是5位數(shù)"); if(【代碼6】) /判斷number是回文數(shù)的條件 System.out.p

13、rintln(number+"是回文數(shù)"); else System.out.println(number+"不是回文數(shù)"); else if(【代碼7】) /判斷number是4位數(shù)的條件 System.out.println(number+"是4位數(shù)"); if(【代碼8】) /判斷number是回文數(shù)的條件碼 System.out.println(number+"是回文數(shù)"); else System.out.println(number+"不是回文數(shù)"); else if(【代碼9】)

14、/判斷number是3位數(shù)的條件 System.out.println(number+"是3位數(shù)"); if(【代碼10】) /判斷number是回文數(shù)的條件 System.out.println(number+"是回文數(shù)"); else System.out.println(number+"不是回文數(shù)"); else if(d2!=0) System.out.println(number+"是2位數(shù)"); if(d1=d2) System.out.println(number+"是回文數(shù)");

15、 else System.out.println(number+"不是回文數(shù)"); else if(d1!=0) System.out.println(number+"是1位數(shù)"); System.out.println(number+"是回文數(shù)"); else System.out.printf("n%d不在1至99999之間",number); ² 實(shí)驗(yàn)后的練習(xí):1 程序運(yùn)行時(shí),用戶(hù)從鍵盤(pán)輸入2332,程序提示怎樣的信息? 2 程序運(yùn)行時(shí),用戶(hù)從鍵盤(pán)輸入654321,程序提示怎樣的信息? 3 程序運(yùn)行

16、時(shí),用戶(hù)從鍵盤(pán)輸入33321,程序提示怎樣的信息? 3猜數(shù)字游戲。² 實(shí)驗(yàn)要求:編寫(xiě)一個(gè)Java應(yīng)用程序,實(shí)現(xiàn)下列功能:1) 程序隨機(jī)分配給客戶(hù)一個(gè)1100之間的整數(shù)2) 用戶(hù)在輸入對(duì)話框中輸入自己的猜測(cè)3) 程序返回提示信息,提示信息分別是:“猜大了”、“猜小了”和“猜對(duì)了”。4) 用戶(hù)可根據(jù)提示信息再次輸入猜測(cè),直到提示信息是“猜對(duì)了”。² 程序運(yùn)行效果示例:程序運(yùn)行效果如下圖所示:² 程序模板:GuessNumber.javaimport javax.swing.JOptionPane;public class GuessNumber public stat

17、ic void main (String args ) System.out.println("給你一個(gè)1至100之間的整數(shù),請(qǐng)猜測(cè)這個(gè)數(shù)"); int realNumber=(int)(Math.random()*100)+1; int yourGuess=0; String str=JOptionPane.showInputDialog("輸入您的猜測(cè):"); yourGuess=Integer.parseInt(str); while(【代碼1】) /循環(huán)條件 if(【代碼2】) /條件代碼 str=JOptionPane.showInputDia

18、log("猜大了,再輸入你的猜測(cè):"); yourGuess=Integer.parseInt(str); else if(【代碼3】) /條件代碼 str=JOptionPane.showInputDialog("猜小了,再輸入你的猜測(cè):"); yourGuess=Integer.parseInt(str); System.out.println("猜對(duì)了!"); ² 實(shí)驗(yàn)后的練習(xí):1. 用“yourGuess>realNumber”替換【代碼1】,可以么?2. 語(yǔ)句:“System.out.println(“猜對(duì)了

19、!”);”為何要放在while循環(huán)語(yǔ)句之后?放在while語(yǔ)句的循環(huán)體中合理嗎?【結(jié)果】將本次上機(jī)實(shí)驗(yàn)結(jié)果按照實(shí)驗(yàn)要求內(nèi)容依次進(jìn)行,填寫(xiě)實(shí)驗(yàn)?zāi)繕?biāo)、過(guò)程、結(jié)果。 【注意事項(xiàng)】實(shí)驗(yàn)報(bào)告要求每人提交一份,使用專(zhuān)門(mén)的報(bào)告紙,內(nèi)容寫(xiě)全,包括實(shí)驗(yàn)名稱(chēng)、班級(jí)、姓名、同組人,試驗(yàn)日期、交報(bào)告日期等。報(bào)告不需要填寫(xiě)源代碼,只要將完成情況和所有練習(xí)題結(jié)果寫(xiě)上就可以?!舅伎碱}】實(shí)驗(yàn)三類(lèi)與對(duì)象、繼承【目的】使用類(lèi)來(lái)封裝對(duì)象的屬性和功能;掌握類(lèi)變量與實(shí)例變量,以及類(lèi)方法與實(shí)例方法的區(qū)別;掌握使用package和import語(yǔ)句。鞏固以下概念:子類(lèi)的繼承性子類(lèi)對(duì)象的創(chuàng)建過(guò)程成員變量的繼承與隱藏方法的繼承與重寫(xiě)【內(nèi)容】1三

20、角形、梯形和圓形的類(lèi)封裝² 實(shí)驗(yàn)要求:編寫(xiě)一個(gè)Java應(yīng)用程序,該程序中有3個(gè)類(lèi):Trangle、Leder和Circle,分別用來(lái)刻畫(huà)“三角形”、“梯形”和“圓形”。具體要求如下:a)Trangle類(lèi)具有類(lèi)型為double的三個(gè)邊,以及周長(zhǎng)、面積屬性,Trangle類(lèi)具有返回周長(zhǎng)、面積以及修改三個(gè)邊的功能。另外,Trangle類(lèi)還具有一個(gè)boolean型的屬性,該屬性用來(lái)判斷三個(gè)屬能否構(gòu)成一個(gè)三角形。b)Lader類(lèi)具有類(lèi)型double的上底、下底、高、面積屬性,具有返回面積的功能。c)Circle類(lèi)具有類(lèi)型為double的半徑、周長(zhǎng)和面積屬性,具有返回周長(zhǎng)、面積的功能。²

21、; 程序運(yùn)行效果示例:程序運(yùn)行效果如下圖所示:² 程序模板:AreaAndLength.javaclass Trangle double sideA,sideB,sideC,area,length; boolean boo; public Trangle(double a,double b,double c) 【代碼1】 /參數(shù)a,b,c分別賦值給sideA,sideB,sideC if(【代碼2】) /a,b,c構(gòu)成三角形的條件表達(dá)式 【代碼3】 /給boo賦值。 else 【代碼4】 /給boo賦值。 double getLength() 【代碼5】 /方法體,要求計(jì)算出leng

22、th的值并返回 public double getArea() if(boo) double p=(sideA+sideB+sideC)/2.0; area=Math.sqrt(p*(p-sideA)*(p-sideB)*(p-sideC) ; return area; else System.out.println("不是一個(gè)三角形,不能計(jì)算面積"); return 0; public void setABC(double a,double b,double c) 【代碼6】 /參數(shù)a,b,c分別賦值給sideA,sideB,sideC if(【代碼7】) /a,b,c構(gòu)

23、成三角形的條件表達(dá)式 【代碼8】 /給boo賦值。 else 【代碼9】 /給boo賦值。 class Lader double above,bottom,height,area; Lader(double a,double b,double h) 【代碼10】 /方法體,將參數(shù)a,b,c分別賦值給above,bottom,height double getArea() 【代碼11】 /方法體,,要求計(jì)算出area返回 class Circle double radius,area; Circle(double r) 【代碼12】 /方法體 double getArea() 【代碼13】 /方

24、法體,要求計(jì)算出area返回 double getLength() 【代碼14】 /getArea方法體的代碼,要求計(jì)算出length返回 void setRadius(double newRadius) radius=newRadius; double getRadius() return radius; public class AreaAndLength public static void main(String args) double length,area; Circle circle=null; Trangle trangle; Lader lader; 【代碼15】 /創(chuàng)建對(duì)

25、象circle 【代碼16】 /創(chuàng)建對(duì)象trangle。 【代碼17】 /創(chuàng)建對(duì)象lader 【代碼18】 / circle調(diào)用方法返回周長(zhǎng)并賦值給length System.out.println("圓的周長(zhǎng):"+length); 【代碼19】 / circle調(diào)用方法返回面積并賦值給area System.out.println("圓的面積:"+area); 【代碼20】 / trangle調(diào)用方法返回周長(zhǎng)并賦值給lengthSystem.out.println("三角形的周長(zhǎng):"+length); 【代碼21】 / trangl

26、e調(diào)用方法返回面積并賦值給areaSystem.out.println("三角形的面積:"+area); 【代碼22】 / lader調(diào)用方法返回面積并賦值給areaSystem.out.println("梯形的面積:"+area); 【代碼23】 / trangle調(diào)用方法設(shè)置三個(gè)邊,要求將三個(gè)邊修改為12,34,1。 【代碼24】 / trangle調(diào)用方法返回面積并賦值給areaSystem.out.println("三角形的面積:"+area); 【代碼25】 / trangle調(diào)用方法返回周長(zhǎng)并賦值給lengthSystem

27、.out.println("三角形的周長(zhǎng):"+length); ² 實(shí)驗(yàn)后的練習(xí):1. 程序中僅僅省略【代碼15】,編譯能通過(guò)嗎?2. 程序中僅僅省略【代碼16】,編譯能通過(guò)嗎?3. 程序中僅僅省略【代碼15】,運(yùn)行時(shí)出現(xiàn)怎樣的異常提示? 4 給Trangle類(lèi)增加3個(gè)方法,分別用來(lái)返回3個(gè)邊:sideA、sideB和sideC。5 讓AreaAndLength類(lèi)中的circle對(duì)象調(diào)用方法修改半徑,然后輸出修改后的半徑以及修改半徑后的圓的面積和周長(zhǎng)。2實(shí)例成員與類(lèi)成員。 ² 實(shí)驗(yàn)要求:按程序模板的要求編寫(xiě)源文件,要特別注意程序的輸出結(jié)果,并能正確解釋輸

28、出的結(jié)果。² 程序運(yùn)行效果示例:程序運(yùn)行效果如下圖所示:² 程序模板:Example.javaclass A 【代碼1】 /聲明一個(gè)float型實(shí)例變量a 【代碼2】 /聲明一個(gè)float型類(lèi)變量b,即static變量b void setA(float a) 【代碼3】 /將參數(shù)a的值賦值給成員變量a void setB(float b) 【代碼4】 /將參數(shù)b的值賦值給成員變量b float getA() return a; float getB() return b; void inputA() System.out.println(a); static void in

29、putB() System.out.println(b); public class Example public static void main(String args) 【代碼5】 /通過(guò)類(lèi)名操作類(lèi)變量b,并賦值100 【代碼6】 /通過(guò)類(lèi)名調(diào)用方法inputB() A cat=new A(); A dog=new A(); 【代碼7】 /cat象調(diào)用方法setA(int a)將cat的成員a的值設(shè)置為200 【代碼8】 /cat調(diào)用方法setB(int b)將cat的成員b的值設(shè)置為400 【代碼9】 /dog象調(diào)用方法setA(int a)將dog的成員a的值設(shè)置為150 【代碼10

30、】 /dog調(diào)用方法setB(int b)將dog的成員b的值設(shè)置為300 【代碼11】/cat調(diào)用inputA()。 【代碼12】/cat調(diào)用inputB()。 【代碼13】/dog調(diào)用inputA()。 【代碼14】/dog調(diào)用inputB()。 ² 實(shí)驗(yàn)后的練習(xí):1. 將inputA()方法中的System.out.println(a);改寫(xiě)為System.out.println(a+b);編譯是否出錯(cuò)?為什么?2. 將inputB()方法中的System.out.println(b);改寫(xiě)為System.out.println(a+b);編譯是否報(bào)錯(cuò)?為什么? 3使用pack

31、age語(yǔ)句與import語(yǔ)句。² 實(shí)驗(yàn)要求:按實(shí)驗(yàn)要求使用package語(yǔ)句,并用import語(yǔ)句使用Java平臺(tái)提供的包中的類(lèi)以及自定義包中的類(lèi)。掌握一些重要的操作步驟。² 程序運(yùn)行效果示例:程序運(yùn)行效果如下圖所示:² 程序模板:模板1:將模板1給出的Java源文件命名為SquareEquation.java,將編譯后得到的字節(jié)碼文件復(fù)制到c:1000tomjiafei目錄中。SquareEquation.javapackage tom.jiafei;public class SquareEquation double a,b,c; double root1,r

32、oot2; boolean boo; public SquareEquation(double a,double b,double c) this.a=a; this.b=b; this.c=c; if(a!=0) boo=true; else boo=false; public void getRoots() if(boo) System.out.println("是一元2次方程"); double disk=b*b-4*a*c; if(disk>=0) root1=(-b+Math.sqrt(disk)/(2*a); root2=(-b-Math.sqrt(dis

33、k)/(2*a); System.out.printf("方程的根:%f,%fn",root1,root2); else System.out.printf("方程沒(méi)有實(shí)根n"); else System.out.println("不是一元2次方程"); public void setCoefficient(double a,double b,double c) this.a=a; this.b=b; this.c=c; if(a!=0) boo=true; else boo=false; 模板2:將模板2給出的Java源程序SunR

34、ise.java保存到d:2000中。在編譯模板2給出的Java源文件之前,要重新設(shè)置classpath。假設(shè)本地機(jī)SDK的安裝目錄是E:jdk1.5。在命令行執(zhí)行如下命令:set classpath=e:jdk1.5jrelibrt.jar;.;c:1000然后編譯模板2給出的Java源程序?;蛴檬髽?biāo)右鍵點(diǎn)擊“我的電腦”,彈出快捷菜單,然后選擇“屬性”命令,彈出“系統(tǒng)屬性”對(duì)話框,再單擊該對(duì)話框中的“高級(jí)”選項(xiàng)卡,然后單擊“環(huán)境變量”按鈕。將classpath的值修改為:E:jdk1.5jrelibrt.jar;.;c:1000然后重新打開(kāi)一個(gè)命令行窗口,編譯模板2給出的Java源程序。Su

35、nRise.javaimport tom.jiafei.*;class SunRise public static void main(String args) SquareEquation equation=new SquareEquation(4,5,1); equation.getRoots(); equation.setCoefficient(-3,4,5); equation.getRoots(); ² 實(shí)驗(yàn)后的練習(xí):假設(shè)SDK的安裝目錄是E:jdk1.5,那么Java運(yùn)行系統(tǒng)默認(rèn)classpath的值是:E:jdk1.5jrelibrt.jar;.;其中的“”表示應(yīng)用程序

36、可以使用當(dāng)前目錄中的無(wú)名包類(lèi)以及當(dāng)前目錄下的子目錄中的類(lèi),子目錄中的類(lèi)必須有包名,而且包名要和子目錄結(jié)構(gòu)相對(duì)應(yīng)。因此,如果將模板2應(yīng)用程序Sunrise.java的字節(jié)碼文件存放到d:5000中,并將SquareEquation.java的字節(jié)碼文件存放在D:5000tomjiafei中,那么就不需要修改classpath。要特別注意的是,因?yàn)镾quareEquation.java有包名,切不可將SquareEquation.java以及它的字節(jié)碼文件存放在d:5000中,即不可以和Sunrise.java的字節(jié)碼存放在一起,請(qǐng)進(jìn)行如下的練習(xí):1. 將SquareEquation.java存放

37、在D:5000tomjiafei中,編譯: D:5000tomjiafeijavac SquareEquation.java2. 將Sunrise.java存放到D:5000中,編譯: D:5000javac Sunrise.java3. 運(yùn)行: java Sunrise【結(jié)果】將本次上機(jī)實(shí)驗(yàn)結(jié)果按照實(shí)驗(yàn)要求內(nèi)容依次進(jìn)行,填寫(xiě)實(shí)驗(yàn)?zāi)繕?biāo)、過(guò)程、結(jié)果。 【注意事項(xiàng)】實(shí)驗(yàn)報(bào)告要求每人提交一份,使用專(zhuān)門(mén)的報(bào)告紙,內(nèi)容寫(xiě)全,包括實(shí)驗(yàn)名稱(chēng)、班級(jí)、姓名、同組人,試驗(yàn)日期、交報(bào)告日期等。報(bào)告不需要填寫(xiě)源代碼,只要將完成情況和所有練習(xí)題結(jié)果寫(xiě)上就可以?!舅伎碱}】實(shí)驗(yàn)四字符串、時(shí)間與數(shù)字類(lèi)【目的】掌握String

38、類(lèi)的常用方法掌握Date類(lèi)以及Calendar類(lèi)的常用方法;掌握BigInteger類(lèi)的常用方法?!緝?nèi)容】1String類(lèi)的常用方法。² 實(shí)驗(yàn)要求:編寫(xiě)一個(gè)Java應(yīng)用程序,判斷兩個(gè)字符串是否相同,判斷字符串的前綴、后綴是否和某個(gè)字符串相同,按字典順序比較兩個(gè)字符串的大小關(guān)系,檢索字符串,創(chuàng)建字符串,將數(shù)字型字符串轉(zhuǎn)換為數(shù)字,將字符串存放到數(shù)組中,用字符數(shù)組創(chuàng)建字符串。² 程序運(yùn)行效果示例:程序運(yùn)行效果如下圖所示:² 程序模板:StringExample.javaclass StringExample public static void main(String

39、args) String s1=new String("you are a student"), s2=new String("how are you"); if(【代碼1】) / 使用equals方法判斷s1與s2是否相同 System.out.println("s1與s2相同"); else System.out.println("s1與s2不相同"); if(【代碼2】) /判斷s3的前綴是否是“220302”。 System.out.println("吉林省的身份證"); String

40、s4=new String("你"), s5=new String("我"); if(【代碼3】)/按著字典序s4大于s5的表達(dá)式。 System.out.println("按字典序s4大于s5"); else System.out.println("按字典序s4小于s5"); int position=0; String path="c:javajspA.java" position=【代碼5】 /獲取path中最后出現(xiàn)目錄分隔符號(hào)的位置 System.out.println("c:

41、javajspA.java中最后出現(xiàn)的位置:"+position); String fileName=【代碼6】/獲取path中“A.java”子字符串。 System.out.println("c:javajspA.java中含有的文件名:"+fileName); String s6=new String("100"), s7=new String("123.678"); int n1=【代碼7】 /將s6轉(zhuǎn)化成int型數(shù)據(jù)。 double n2=【代碼8】 /將s7轉(zhuǎn)化成double型數(shù)據(jù)。 double m=n1+n2

42、; System.out.println(m); String s8=【代碼9】 /String調(diào)用valuOf(int n)方法將m轉(zhuǎn)化為字符串對(duì)象 position=s8.indexOf("."); String temp=s8.substring(position+1); System.out.println("數(shù)字"+m+"有"+temp.length()+"位小數(shù)") ; String s9=new String("ABCDEF"); char a=【代碼10】 /將s8存放到數(shù)組a中

43、。 for(int i=a.length-1;i>=0;i-) System.out.print(" "+ai); ² 實(shí)驗(yàn)后的練習(xí):1. 程序中的s6改寫(xiě)成String s6=new String(“1a12b”);運(yùn)行時(shí)提示怎樣的錯(cuò)誤?2. 請(qǐng)用數(shù)組a的前3個(gè)單元?jiǎng)?chuàng)建一個(gè)字符串并輸出該串。3. 請(qǐng)給出獲取path中“jsp”子字符串的代碼。4. 在程序的適當(dāng)位置增加如下代碼,注意輸出的結(jié)果。String str1=new String(“ABCABC”),str2=null,str3=null,str4=null;str2=str1.replaceAll

44、(“A”,”First”);str3=str2.replaceAll(“B”,”Second”);str4=str3.replaceAll(“C”,”Third”);System.out.println(str1);System.out.println(str2);System.out.println(str3);System.out.println(str4);5. 可以使用Long類(lèi)中的下列static方法得到整數(shù)各種進(jìn)制的字符串表示:Public static String toBinaryString(long i) Public static String toOctalString

45、(long i)Public static String toHexString(long i)Public static String toString(long i,int p)其中的toString(long i, int p)返回整數(shù)i的p進(jìn)制表示。請(qǐng)?jiān)谶m當(dāng)位置添加代碼輸出12345的二進(jìn)制、八進(jìn)制和十六進(jìn)制表示。6. 在適當(dāng)位置添加代碼,分別輸出數(shù)字m的整數(shù)部分和小數(shù)部分。2比較日期的大小。² 實(shí)驗(yàn)要求:編寫(xiě)一個(gè)Java應(yīng)用程序,用戶(hù)從輸入對(duì)話框輸入了兩個(gè)日期,程序?qū)⑴袛鄡蓚€(gè)日期的大小關(guān)系,以及兩個(gè)日期之間的間隔天數(shù)。² 程序運(yùn)行效果示例:程序運(yùn)行效果如下圖所示:² 程序模板:DateExampleimport java.util.*;import javax.swing.JOptionPane;public class DateExample public static void main(String args ) String str=JOptionPane.showInputDialog("輸入第一個(gè)日期的年份:"); int yearOne=Integer.parseInt(str); str=JOptionPane.sho

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論