java有用的程序_第1頁(yè)
java有用的程序_第2頁(yè)
java有用的程序_第3頁(yè)
java有用的程序_第4頁(yè)
java有用的程序_第5頁(yè)
已閱讀5頁(yè),還剩4頁(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、6. 定義一個(gè)類Initial,類的內(nèi)部重載initArr()方法,分別實(shí)現(xiàn)對(duì)整型數(shù)組、雙精度型數(shù)組、字符串?dāng)?shù)組的初始化功能,數(shù)組作為方法的參數(shù),方法體內(nèi)提示用戶為數(shù)組元素輸入數(shù)據(jù),然后顯示所有元素。在mian方法中創(chuàng)建三種類型的數(shù)組,創(chuàng)建Initial類的對(duì)象,分別調(diào)用initArr()方法進(jìn)行初始化。import java.util.*;public class OverLoad2 public static void main(String args) / TODO Auto-generated method stubScanner reader = new Scanner(System

2、.in);Initial init = new Initial();int a = new int6;init.initArr(a);double b = new double5;init.initArr(b);String s = new String3;init.initArr(s);class InitialScanner reader = new Scanner(System.in);void initArr(int arr) System.out.println(初始化整型數(shù)組); for(int i=0;iarr.length;i+) System.out.println(請(qǐng)輸入第

3、+(i+1)+個(gè)整數(shù)); arri = reader.nextInt(); System.out.println(整型數(shù)組初始化完畢,所有元素為:); for(int i=0;iarr.length;i+) System.out.print(arri+ ); System.out.println(n-); void initArr(double arr) System.out.println(初始化雙精度型數(shù)組); for(int i=0;iarr.length;i+) System.out.println(請(qǐng)輸入第+(i+1)+個(gè)雙精度數(shù)); arri = reader.nextDouble

4、(); System.out.println(雙精度型數(shù)組初始化完畢,所有元素為:); for(int i=0;iarr.length;i+) System.out.print(arri+ ); System.out.println(n-); void initArr(String arr) System.out.println(初始化字符串型數(shù)組); for(int i=0;iarr.length;i+) System.out.println(請(qǐng)輸入第+(i+1)+個(gè)字符串); arri = reader.next(); System.out.println(字符串型數(shù)組初始化完畢,所有元素

5、為:); for(int i=0;i=0.5)return n+1;elsereturn n;static long round(double a)long n = (long)a;if(a-n=0.5)return n+1;elsereturn n;生命周期及作用域1. 定義一個(gè)按身高計(jì)算標(biāo)準(zhǔn)體重的類StdWeight,其中包含兩個(gè)靜態(tài)的成員方法:forMale(double h)計(jì)算男子標(biāo)準(zhǔn)體重、forFemale(double h)計(jì)算女子標(biāo)準(zhǔn)體重,兩個(gè)方法均帶返回值。在應(yīng)用程序類的main方法中提示用戶輸入身高和性別,調(diào)用StdWeight類的方法得到標(biāo)準(zhǔn)體重,顯示結(jié)果。計(jì)算公式:標(biāo)準(zhǔn)

6、體重(男)=(身高cm-100)x0.9(kg) 標(biāo)準(zhǔn)體重(女)=(身高cm-100)x0.9(kg)-2.5(kg) 正常體重:標(biāo)準(zhǔn)體重-(多少)10提示:控制實(shí)數(shù)保留N位小數(shù):(如保留2位小數(shù))import java.text.DecimalFormat;double num = 21.3749;DecimalFormat df = new DecimalFormat(0.00);String s = df.format(num); /21.37參考代碼:import java.util.*;import java.text.*;public class Demo public stati

7、c void main(String args) Scanner reader = new Scanner(System.in);System.out.println(請(qǐng)輸入您的身高(單位厘米);double height = reader.nextDouble();System.out.println(請(qǐng)選擇您的性別:1.男 2.女);int sex = reader.nextInt();DecimalFormat df = new DecimalFormat(0.00); if(sex=1)System.out.println(標(biāo)準(zhǔn)體重是+df.format(StdWeight.forFe

8、male(height)+公斤);else if(sex=2)System.out.println(標(biāo)準(zhǔn)體重是+df.format(StdWeight.forMale(height)+公斤);elseSystem.out.println(您輸入的選擇不正確。);class StdWeightstatic double forMale(double h)return (h-100)*0.9;static double forFemale(double h)return (h-100)*0.9-2.5; Java常用類與函數(shù)庫(kù)1. 提示用戶輸入三角型兩邊邊長(zhǎng)與其夾角度數(shù),利用公式s=1/2absi

9、n(c)計(jì)算三角型面積,輸出結(jié)果。注意:正弦值的計(jì)算對(duì)象是弧度制的角,需將角度轉(zhuǎn)換為弧度:/180。import java.util.Scanner;import java.text.DecimalFormat;class Demo public static void main(String args)Scanner reader = new Scanner(System.in);System.out.println(請(qǐng)輸入三角型兩邊邊長(zhǎng));double a = reader.nextDouble();double b = reader.nextDouble();System.out.pri

10、ntln(請(qǐng)輸入兩邊夾角度數(shù));double angle = reader.nextDouble();double s = 0.5*a*b*Math.sin(angle*Math.PI/180);DecimalFormat df = new DecimalFormat(0.00);String area = df.format(s);System.out.println(該三角型面積是+area);/System.out.println(Math.sin(90);2. 編寫Java應(yīng)用程序,使用Vector向量來(lái)保存用戶輸入的若干字符串。循環(huán)讀入用戶輸入的字符串,以end作為結(jié)束。將所有字符串

11、顯示出來(lái)。在所有字符串的中間位置插入“NICE”,再次顯示所有字符串。import java.util.Vector;import java.util.Scanner;class Demo public static void main(String args)Scanner reader = new Scanner(System.in);Vector vct = new Vector(1,1);System.out.println(請(qǐng)輸入字符串,以輸入end作為結(jié)束);String str;dostr = reader.next();vct.add(str);while(!str.equal

12、s(end);System.out.println(您剛才輸入的所有字符串是:);System.out.println(vct.toString();System.out.println(插入NICE到中間位置:);int n = vct.capacity();vct.insertElementAt(NICE,n/2);System.out.println(vct.toString();3. 顯示InputDialog輸入對(duì)話框?qū)崿F(xiàn)對(duì)用戶輸入的英文單詞進(jìn)行簡(jiǎn)單處理(轉(zhuǎn)換為大寫、轉(zhuǎn)換為小寫、反轉(zhuǎn)顯示)。程序運(yùn)行效果如下圖:import javax.swing.JOptionPane;class

13、Demo public static void main(String args)String str = JOptionPane.showInputDialog(請(qǐng)輸入一個(gè)英文單詞);str = str.trim();String items = 轉(zhuǎn)換為大寫, 轉(zhuǎn)換為小寫, 反轉(zhuǎn)顯示 ; Object selectedValue = JOptionPane.showInputDialog(null, 請(qǐng)選擇, 輸入, JOptionPane.INFORMATION_MESSAGE, null, items, items0);String choice = (String)selectedVa

14、lue;if(choice.equals(轉(zhuǎn)換為大寫)JOptionPane.showMessageDialog(null,str.toUpperCase(),操作結(jié)果,JOptionPane.INFORMATION_MESSAGE);else if(choice.equals(轉(zhuǎn)換為小寫)JOptionPane.showMessageDialog(null,str.toLowerCase(),操作結(jié)果,JOptionPane.INFORMATION_MESSAGE);else JOptionPane.showMessageDialog(null,(new StringBuffer(str).

15、reverse(),操作結(jié)果,JOptionPane.INFORMATION_MESSAGE);對(duì)象的進(jìn)一步探討-面向?qū)ο笾械睦^承1. 定義一個(gè)球類Ball,包含一個(gè)私有成員變量半徑(double r),兩個(gè)公有成員方法:設(shè)定半徑值方法( void setR(double x) 、 得到半徑值方法(double getR( ))。定義一個(gè)臺(tái)球類Billiards,繼承Ball類,包含一個(gè)私有成員變量顏色(String color),兩個(gè)公有成員方法:設(shè)定顏色方法(void setCol (String clo))、輸出信息方法(void show()),其中show方法可以輸出該臺(tái)球的顏色和半

16、徑值。定義一個(gè)公有類,測(cè)試前兩個(gè)類。class Ballprivate double r;public void setR(double x)r = x;public double getR()return r;class Billiards extends Ballprivate String color;public void setCol(String col)color = col;public void show()System.out.println(臺(tái)球的顏色是+color+,半徑是+getR();public class Demopublic static void main(

17、String args)Ball b1 = new Ball();b1.setR(10);System.out.println(球的半徑是+b1.getR();Billiards b2 = new Billiards();b2.setR(5);b2.setCol(藍(lán)色);b2.show();2. 定義材料類Material,包含:保護(hù)的成員變量名稱、單價(jià)(String name; double price;)為數(shù)據(jù)初始化賦值的構(gòu)造方法;公有的成員方法得到所有信息(public String toString())。定義木材類Wood,繼承自材料類。包含:私有的成員變量顏色(String col

18、;)為數(shù)據(jù)初始化賦值的構(gòu)造方法;覆蓋公有的成員方法得到所有信息(public String toString())。定義公共類,測(cè)試上述兩個(gè)類的使用。思考:程序中把木材類中toString()方法的public 去掉會(huì)產(chǎn)生什么結(jié)果?為什么?程序中把材料類中toString()方法的public 去掉會(huì)產(chǎn)生什么結(jié)果?為什么?class Materialprotected String name;protected double price;Material(String n,double p)name = n;price = p;public String toString()return na

19、me+的價(jià)格是+price;class Wood extends Materialprivate String col;Wood(String n,double p,String c)super(n,p);col = c;public String toString()return name+的價(jià)格是+price+,顏色是+col;public class Demopublic static void main(String args)Material m = new Material(大理石,1000);System.out.println(m.toString();Wood w = new

20、 Wood(檀木,1200,紅棕);System.out.println(w.toString();思考題:木材類中toString()方法的public 去掉程序會(huì)出錯(cuò),因?yàn)樵摲椒ㄓ刹牧项惱^承而來(lái),子類覆蓋父類的方法時(shí)不能縮小其訪問(wèn)權(quán)限,public去掉就會(huì)變成包訪問(wèn)權(quán)限,此處不能去掉。 材料類中toString()方法的public 去掉會(huì)產(chǎn)生同樣的問(wèn)題,因?yàn)閠oString方法不是材料類自定義的,是所有類的父類Object類提供的。3. 改寫例7-8,給Shape類增加構(gòu)造方法,能夠?qū)︻伾M(jìn)行初始化設(shè)置,思考兩個(gè)子類的構(gòu)造方法該如何修改才能使程序正常運(yùn)行。class Demo publi

21、c static void main(String args)Circle c = new Circle(blue,1);c.printInfo();Rectangle rect = new Rectangle(green,3,4);rect.printInfo();class ShapeString color;Shape(String c)color = c;double getArea()return 0;class Circle extends Shapedouble radius;Circle(String c, double r)super(c);radius = r;double

22、 getArea()return Math.PI*radius*radius;void printInfo()System.out.println(圓的顏色是:+color+面積是+getArea();class Rectangle extends Shapedouble width, height;Rectangle(String c, double w, double h)super(c);width = w;height = h;double getArea()return width*height;void printInfo()System.out.println(矩形的顏色是:+c

23、olor+面積是+getArea();深入多態(tài)1. 要使程序運(yùn)行后出現(xiàn)如下結(jié)果,該如何修改程序代碼。去掉Person類前面的final,去掉Student類中show()方法前面的final。class Person String name;char sex;Person()Person(String n,char s)name = n;sex = s;void show()System.out.println(name is +name+, sex is +sex);class Student extends Personint number;Student()Student(String

24、n, char s, int num)name = n;sex = s;number = num;void show()System.out.println(name is +name+, sex is +sex+,number is +number);class Pupil extends Studentdouble hcScore;Pupil()Pupil (String n, char s, int num,double hcs)name = n;sex = s;number = num;hcScore = hcs;void show()System.out.println(name i

25、s +name+, sex is +sex+,number is +number+,Score is +hcScore);public class App01public static void main(String s)Person p = new Person(小明, 男);p.show();Student stu = new Student(小明, 男,101);stu.show();Pupil pu = new Pupil(小明, 男,101,95);pu.show();2. 求正方形的面積a)創(chuàng)建一個(gè)接口IShape ,接口中有一個(gè)抽象方法public double area( );b)定義一個(gè)類square,且實(shí)現(xiàn)IShape接口。square類有一個(gè)屬性表示正方形的邊長(zhǎng);構(gòu)造方法初始化該邊長(zhǎng)。c)定義一個(gè)主類,在此類中,創(chuàng)建square類的實(shí)例,求該正方形面積。interface IShapepublic double area();class square implements IShapedouble length ;public square(double l)length = l;public do

溫馨提示

  • 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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 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)論