JAVA編程題全集100題與答案1_第1頁
JAVA編程題全集100題與答案1_第2頁
JAVA編程題全集100題與答案1_第3頁
JAVA編程題全集100題與答案1_第4頁
JAVA編程題全集100題與答案1_第5頁
已閱讀5頁,還剩10頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、. .PAGE15 / NUMPAGES15Java程序設計總復習題編寫一個Java程序,用if-else語句判斷某年份是否為閏年。(分支)/ Programme Name LeapYear.javapublic class LeapYearpublic static void main(String args)int year=2010; if(args.length!=0) year=Integer.parseInt(args0);if(year%4=0 & year%100!=0)|(year%400=0) System.out.println(year+ 年是閏年。);else Sys

2、tem.out.println(year+ 年不是閏年。); /if-else語句編寫一個Java程序在屏幕上輸出1!+2!+3!+10!的和。(循環(huán))/ programme name ForTest.javapublic class ForTest public static void main( String args ) int i,j,mul,sum=0;for(i=1;i=10;i+) mul=1;for(j=1,j=i;j+) mul=mul*j; sum=sum+mul;System.out.println(“1!+2!+3!+10!= ”+sum);依次輸入10個學生成績,判斷

3、學生(優(yōu)秀、良好、中等、與格、不與格)并計算人數(shù)(switch)使用冒泡排序(數(shù)組)publicclass BubbleSort publicstaticvoid main(String args) int array=63,4,24,1,3,5;BubbleSort sorter=new BubbleSort();sorter.sort(array);/冒泡排序publicvoid sort(int array)for(int i=1;iarray.length;i+)for(int j=0;jarrayj+1)int temp=arrayj;arrayj=arrayj+1;arrayj+1

4、=temp; showArray(array);/遍歷數(shù)組,并輸出數(shù)組的元素。publicvoid showArray(int array)for(int i=0;iarray.length;i+) System.out.print(arrayi+t);System.out.println();實現(xiàn)會員注冊,要求用戶名長度不小于3,密碼長度不小于6,注冊時兩次輸入密碼必須一樣 (字符串)import java.util.Scanner;publicclass Register String name;String password;String newPassword;/publicvoid

5、nameExe()Scanner input=new Scanner(System.in);System.out.println(請輸入用戶名,密碼和驗證密碼); System.out.print(用戶名:);name=input.next(); System.out.print(密碼:);password=input.next(); System.out.print(驗證密碼:);newPassword=input.next();while(name.length()3|(password.equals(newPassword)=false)|(password.length()6)if(n

6、ame.length()3)System.out.println(用戶名不能小于3);if(password.equals(newPassword)=false)|password.length()0&age12)ticketPrice=20;elseif(age20)ticketPrice=40;elseif(age50)ticketPrice=80;elseticketPrice=35; System.out.println(門票價格:+ticketPrice); /import java.util.Scanner;publicclass Test publicstaticvoid mai

7、n(String args) Scanner input=new Scanner(System.in);Tourist t1=new Tourist();System.out.print(請輸入年齡:);t1.setAge(input.nextInt();t1.ticket(); (1)編寫一個圓類Circle,該類擁有:一個成員變量Radius(私有,浮點型); / 存放圓的半徑;兩個構造方法 Circle( ) / 將半徑設為0 Circle(double r ) /創(chuàng)建Circle對象時將半徑初始化為r 三個成員方法 double getArea( ) /獲取圓的面積 double ge

8、tPerimeter( ) /獲取圓的周長 void show( ) /將圓的半徑、周長、面積輸出到屏幕(2)編寫一個圓柱體類Cylinder,它繼承于上面的Circle類。還擁有:一個成員變量double hight(私有,浮點型); / 圓柱體的高;構造方法 Cylinder (double r, double h ) /創(chuàng)建Circle對象時將半徑初始化為r 成員方法 double getVolume( ) /獲取圓柱體的體積 void showVolume( ) /將圓柱體的體積輸出到屏幕編寫應用程序,創(chuàng)建類的對象,分別設置圓的半徑、圓柱體的高,計算并分別顯示圓半徑、圓面積、圓周長,圓

9、柱體的體積。/Programme Name TestCylinder.javaclass Circle /定義父類-園類private double radius; /成員變量-園半徑Circle() /構造方法radius=0.0;Circle(double r) /構造方法 radius=r; double getPerimeter() /成員方法-求園周長return 2*Math.PI*radius;double getArea() /成員方法-求園面積return Math.PI*radius*radius;void disp() /成員方法-顯示園半徑、周長、面積System.ou

10、t.println(圓半徑=+radius);System.out.println(圓周長=+getPerimeter();System.out.println(圓面積=+getArea();class Cylinder extends Circle /定義子類-圓柱類private double hight; /成員變量-園柱高Cylinder(double r,double h) /構造方法 super(r);hight=h;public double getVol() /成員方法-求園柱體積return getArea()*hight;public void dispVol() /成員方

11、法-顯示園柱體積System.out.println(圓柱體積=+getVol();public class TestCylinder /定義主類public static void main(String args) /主程入口 Circle Ci=new Circle(10.0); / 生成園類實例 Ci.disp(); / 調(diào)用園類的方法 Cylinder Cyl=new Cylinder(5.0,10.0); /生成圓柱類實例Cyl.disp(); /調(diào)用父類方法 Cyl.dispVol(); /調(diào)用子類方法 編寫一個Java應用程序,從鍵盤讀取用戶輸入兩個字符串,并重載3個函數(shù)分別實

12、現(xiàn)這兩個字符串的拼接、整數(shù)相加和浮點數(shù)相加。要進行異常處理,對輸入的不符合要求的字符串提示給用戶,不能使程序崩潰。(異常處理)/programme name Strinput.javaimport java.io.*;public class Strinput public static void main(String args) String s1=null,s2=null,ss,si,sf; int i1,i2; float f1,f2; BufferedReaderstrin=new BufferedReader(new InputStreamReader(System.in); tr

13、ySystem.out.print (輸入第一個字符串: );s1=strin.readLine(); System.out.print (輸入第二個字符串: );s2= strin.readLine();catch(Exception e) System.out.println(e.getMessage();i1 = Integer.parseInt(s1); i2 = Integer.parseInt(s2); f1 = Float.parseFloat(s1); f2 = Float.parseFloat(s2); ss = strAdd(s1,s2); si = strAdd(i1,i

14、2); sf = strAdd(f1,f2); System.out.println (輸入的二個字符串相加結果為:+ss ); System.out.println (輸入字符串轉(zhuǎn)換為整數(shù)相加結果為:+si ); System.out.println (輸入字符串轉(zhuǎn)換為浮點數(shù)相加結果為:+sf ); static String strAdd(String str1,String str2) return str1+str2;static String strAdd(int int1,int int2) return String.valueOf(int1+int2);static Strin

15、g strAdd(float flt1,float flt2) return String.valueOf (flt1+flt2); 應用FileInputStream類,編寫應用程序,從磁盤上讀取一個Java程序,并將源程序代碼顯示在屏幕上。(被讀取的文件路徑為:E:/myjava/Hello.java)/ Programme Name FISDemo.javaimport java.io.*; public class FISDemo public static void main(String args) byte buf=new byte2056; try FileInputStrea

16、m fileIn=new FileInputStream(e:/myjava/Hello.java); int bytes=fileIn.read(buf,0,2056); String str=new String(buf,0,bytes); System.out.println(str);catch(Exception e) e.printStackTrace( );編寫一個Java程序?qū)?00,101,102,103,104,105個數(shù)以數(shù)組的形式寫入到Dest.txt文件中,并以相反的順序讀出顯示在屏幕上。(文件)import java.io.*;publicclass IODemo

17、 publicstaticvoid main( String args ) int data = 100,101,102,103,104,105;int t=newint200;try / File file=new File(dest.txt); DataOutputStream out = new DataOutputStream (new FileOutputStream(dest.txt);for(int i=0;idata.length;i+) out.writeInt(datai);寫入 out.close(); DataInputStream in = new DataInput

18、Stream (new FileInputStream(dest.txt);/先讀出來再倒序輸出for(int i=0;i= 0;i-) System.out.print( +ti); /* for(int i= data.length-1;i= 0;i-) t=in.readInt(datai); System.out.print( +t); */ System.out.println( ); in.close(); catch(IOException e) System.out.println(e.getMessage(); 編寫一個Java程序?qū)崿F(xiàn)多線程,在線程中輸出線程的名字,隔300

19、毫秒輸出一次,共輸出20次。/ programme name TestThread; / 聲明一個子線程類Threaddemo; class ThreadDemo extends Thread public ThreadDemo(String str) super(str); public void run() for(int i=0;i20;i+)System.out.print(“”+this.getName();Try Sleep(300);catch(InterruptedException e)System.out.println(e.getMessage();Return;Syst

20、em.out.println(“ /end”);public class TestThread public static void main( String args ) ThreadDemo thread1=new ThreadDemo(“T1”); ThreadDemo thread2=new ThreadDemo(“T2”); ThreadDemo thread3=new ThreadDemo(“T3”); thread1.start(); thread2.start(); thread3.start(); 10. 編寫程序,在屏幕上顯示帶標題的窗口,并添加一個按鈕。當用戶單擊按鈕時,

21、結束程序。(窗體編程)/ Programme Name ButtonEventDemo.javaimport javax.swing.*;import java.awt.event.*;public class ButtonEventDemo extends JPanel implements ActionListenerprotected utton b1;/聲明一個按鈕對象public ButtonEventDemo() /構造方法ImageIcon ButtonIcon = new ImageIcon(images/green.png); /創(chuàng)建按鈕的圖標對象 b1 = new utto

22、n(退出按鈕, ButtonIcon); /生成按鈕對象b1.setMnemonic(KeyEvent.VK_E); /設置b1的助記符是Alt+E b1.setToolTipText(這是退出按鈕。);/ 設置按鈕提示條 this.add(b1); /往面板對象中加載按鈕 b1.addActionListener(this); /本類對象注冊為按鈕的事件監(jiān)聽器 public void actionPerformed(ActionEvent e)/按鈕事件響應方法System.exit(0); /按b1則退出主程序 private static void createGUI() /創(chuàng)建窗體 J

23、Frame.setDefaultLookAndFeelDecorated(true); /設置java隱含觀感 JFrame frame = new JFrame(按鈕測試); /生成應用程序主窗體 frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); /設置關閉時隱含操作 ButtonEventDemo CPane = new ButtonEventDemo(); /生成主類對象-面板 CPane.setOpaque(true); /面板要求不透明 frame.setContentPane(CPane); /設置主類對象為主窗體的容面板

24、frame.pack(); /主窗體緊縮顯示 frame.setVisible(true); /設置主窗體可見 public static void main(String args) /將createGUI()列入線程 javax.swing.SwingUtilities.invokeLater(new Runnable() public void run() createGUI(); ); 12、定義一個表示學生信息的類Student,要求如下:(有關類的編程)(1)類Student的成員變量:sNO表示學號;sName表示;sSex表示性別;sAge表示年齡;sJava:表示Java課程

25、成績。(2)類Student帶參數(shù)的構造方法: 在構造方法過形參完成對成員變量的賦值操作。(3)類Student的方法成員:getNo():獲得學號;getName():獲得;getSex():獲得性別;getAge()獲得年齡;getJava():獲得Java 課程成績根據(jù)類Student的定義,創(chuàng)建五個該類的對象,輸出每個學生的信息,計算并輸出這五個學生Java語言成績的平均值,以與計算并輸出他們Java語言成績的最大值和最小值。/Pragramme name Student;publicclass Student String sNO,sName,sSex;int sAge,sJava;

26、public Student(String XH,String XM,String XB,int NL,int XF) super(); sNO=XH; sName=XM; sSex=XB; sAge=NL; sJava=XF; public String getNO() return sNO;public String getName() return sName;public String getSex() return sSex;publicint getAge() return sAge;publicint getJava() return sJava;publicstaticvoid

27、 main(String args) Student st=new Student5;st0=new Student(09zc01,三,男,19,94);st1=new Student(09zc02,四,男,20,85);st2=new Student(09zc03,王五,女,18,96);st3=new Student(09zc04,六,男,17,90);st4=new Student(09zc05,七,女,21,88);intmax=0,min=100,sum=0; System.out.println( 學生信息:);for (int i=0;ist.length;i+) if (sti

28、.sJava max)max=sti.sJava; sum=sum+sti.sJava; System.out.println(學生編號:+sti.getNO()+,:+sti.getName()+,性別:+sti.getSex()+,年齡:+sti.getAge()+, Java課學分:+sti.getJava(); System.out.println(); System.out.println( 共有學生:+st.length+,平均成績:+sum/st.length); System.out.println( 最小學分:+min+,最大學分:+max);Java基礎1. 九種基本數(shù)據(jù)類

29、型的大小,以與他們的封裝類2. Switch可以用的參數(shù)種類.3. Object有哪些公用方法?4. 緩存.5. Java的四種引用,強弱軟虛,用到的場景.6. Hashcode的作用以與原理,Hash的算法:開放地址法和鏈地址法的對比.Hash擴容與加載因子的介紹.rehash過程等.7. ArrayList,LinkedList,Vector的區(qū)別.8. String,StringBuffer與StringBuilder的區(qū)別.9. Map,Set,List,Queue,Stack的特點與用法.10. HashMap和HashTable的區(qū)別.要深層理解,不只是線程安全,還有Hash算法的

30、區(qū)別.11. HashMap和ConcurrentHashMap的區(qū)別,HashMap的底層源碼.12. TreeMap,HashMap,LindedHashMap的區(qū)別.13. Collection包結構,與Collections的區(qū)別.14. trycatchfinally,try里有return,finally還執(zhí)行么?15. Excption與Error包結構.非檢查異常你遇到過哪些情況,檢查異常你遇到過哪些情況.16. Java面向?qū)ο蟮娜齻€特征與含義.以與面向?qū)ο蟮奈鍌€原則.17. Override和Overload的含義去區(qū)別.18. Interface與abstract類的區(qū)別

31、,應用場景.19. Staticclass與nonstaticclass的區(qū)別.20. java多態(tài)的實現(xiàn)原理.21. 實現(xiàn)多線程的兩種方法:Thread與Runable.以與wait,join,notify等的使用.22. 線程同步的方法:sychronized,lock,reentrantLock,Condition等.23. 鎖的等級:方法鎖,對象鎖,類鎖.24. 寫出生產(chǎn)者消費者模式.用阻塞隊列和不用的情況.25. ThreadLocal的設計理念與作用.26. ThreadPool用法與優(yōu)勢.27. Concurrent包里的其他東西:ArrayBlockingQueue,Count

32、DownLatch等等.28. wait()和sleep()的區(qū)別.29. foreach與正常for循環(huán)效率對比.30. JavaIO.31. 反射的作用于原理.32. 泛型常用特點.33. XML與JSON的對比.34. Java與C+對比.35. 設計模式的六大原則.總開閉原則.36. 常用設計模式的DEMO和介紹:單例,工廠,適配器,責任鏈,觀察者等等.37. Servlet非常重要,要完整的說出聲明周期.這個我推薦大家多百度看大牛博客文檔,比看書快.JVM1. 存模型以與分區(qū),需要詳細到每個區(qū)放什么.2. 堆里面的分區(qū):Eden,survivalfromto,老年代,各自的特點.3. 對象創(chuàng)建方法,對象的存分配,對象的訪問定位.4. GC的兩種判定方法:引用計數(shù)與引用鏈.5. GC的三種收集方法:標記清除,標記整理,復制算法的原理與特點,分別用在什么地方,如果讓你優(yōu)化收集方法,有什么思路?6. GC收集器有哪些?7. MinorGC與FullGC分別在什么時候發(fā)生?8. ClassLoader介紹.9. 類加載的五個過程:加載,驗證,準

溫馨提示

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

評論

0/150

提交評論