《Java基礎(chǔ)入門(mén)》_課后習(xí)題答案
《《Java基礎(chǔ)入門(mén)》_課后習(xí)題答案》由會(huì)員分享,可在線閱讀,更多相關(guān)《《Java基礎(chǔ)入門(mén)》_課后習(xí)題答案(15頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、《Java基礎(chǔ)入門(mén)》課后習(xí)題答案 第1章 Java開(kāi)發(fā)入門(mén) 一、填空題 1、 Java EE、Java SE、Java ME 2、 JRE 3、 javac 4、 bin 5、 path、classpath 二、選擇題 1、ABCD 2、C 3、D 4、B 5、B 三、簡(jiǎn)答題 1、 面向?qū)ο?、跨平臺(tái)性、健壯性、安全性、可移植性、多線程性、動(dòng)態(tài)性等。 2、 JRE(Java Runtime Environment,Java運(yùn)行時(shí)環(huán)境),它相當(dāng)于操作系統(tǒng)部分,提供了Java程序運(yùn)行時(shí)所需要的基本條件和許多Java基礎(chǔ)類(lèi),例如,IO類(lèi)、GUI控件類(lèi)、網(wǎng)絡(luò)類(lèi)等。JRE是提供給
2、普通用戶(hù)使用的,如果你只想運(yùn)行別人開(kāi)發(fā)好的Java程序,那么,你的計(jì)算機(jī)上必須且只需安裝JRE。 JDK(Java Development Kit,Java開(kāi)發(fā)工具包),它包含編譯工具、解釋工具、文檔制作工具、打包工具多種與開(kāi)發(fā)相關(guān)的工具,是提供給Java開(kāi)發(fā)人員使用的。初學(xué)者學(xué)習(xí)和使用Java語(yǔ)言時(shí),首先必須下載和安裝JDK。JDK中已經(jīng)包含了JRE部分,初學(xué)者安裝JDK后不必再去下載和安裝JRE了。 四、編程題 public class HelloWorld { public static void main(String[] args) { System.out.pri
3、ntln("這是第一個(gè)Java程序!"); } } 第2章 Java編程基礎(chǔ) 一、填空題 1、 class 2、 true和false 3、 單行注釋、多行注釋、文檔注釋 4、 基本數(shù)據(jù)類(lèi)型、引用數(shù)據(jù)類(lèi)型 5、 1、2、4、8 6、 & && | || 7、 0 8、 5 9、 34 10、 56 二、判斷題 1、 錯(cuò) 2、對(duì) 3、錯(cuò) 4、對(duì) 5、錯(cuò) 三、選擇題 1、 AD 2、AD 3、C 4、ABCD 5、C 6 、A 7、AC 8、A 9、B 10、A 四、程序分析題 1、 編譯不通過(guò)。int值4和b相加時(shí),
4、由于變量b的類(lèi)型為byte,取值范圍沒(méi)有int類(lèi)型大,存不下int類(lèi)型的值,因此編譯不通過(guò)。 2、 編譯不通過(guò)。這是因?yàn)閥是在最里層的代碼塊中定義的一個(gè)變量,只有在那個(gè)代碼塊中才可使用,在使用y = x;語(yǔ)句時(shí)已經(jīng)超過(guò)了y變量的作用域,所以編譯無(wú)法通過(guò)。 3、 打印結(jié)果為:3。 4、 打印結(jié)果為: 9 8 7 五、簡(jiǎn)答題 1、Java語(yǔ)言的八種基本數(shù)據(jù)類(lèi)型有:byte字節(jié)型,占一個(gè)字節(jié)。short短整型,占兩個(gè)字節(jié)。int整型,占4個(gè)字節(jié)。long長(zhǎng)整型,占8個(gè)字節(jié)。float單精度浮點(diǎn)型,占4個(gè)字節(jié)。double雙精度浮點(diǎn)型,占8個(gè)字節(jié)。char字
5、符型,占兩個(gè)字節(jié)。boolean型,表示邏輯值,有true和false兩個(gè)值,分別占一個(gè)字節(jié)。 2、如果使用“&”在表達(dá)式之間進(jìn)行連接,那么無(wú)論任何情況,“&”兩邊的表達(dá)式都會(huì)參與計(jì)算。如果使用“&&”進(jìn)行連接,當(dāng)“&&”左邊的表達(dá)式為false,則不會(huì)執(zhí)行其右邊的表達(dá)式。例如定義int x = 2,y = 0; boolean b = x < y & x / 2 > 0表達(dá)是會(huì)發(fā)生被0除異常,因?yàn)閤 / y的表達(dá)式執(zhí)行了。而boolean b = x < y & x / 2 > 0是不會(huì)出現(xiàn)這種異常的,因?yàn)閤 < y為false,表達(dá)式x / y不會(huì)執(zhí)行。 3、方法重載指的是在一個(gè)類(lèi)中可
6、以聲明多個(gè)同名的方法,而方法中參數(shù)的個(gè)數(shù)或者數(shù)據(jù)類(lèi)型不一致。調(diào)用這些同名的方法時(shí),JVM會(huì)根據(jù)實(shí)際參數(shù)的不同綁定到不同的方法。 六、編程題 1、參考答案 public class Test01 { public static void main(String[] args) { int sum = 0; for (int i = 1; i < 100; i++) { if (i % 2 != 0) sum += i; } System.out.println(sum); } } 2、參考答案 public class Test02
7、{ public static void main(String args[]) { int y = function(0); System.out.println(y); } public static int function(int x) { int y; if (x > 0) { y = x + 3; } else if (x == 0) { y = 0; } else { y = x * x - 1; } return y; } } 3、參考答案 public class Test03 {
8、 public static void main(String[] args) { int[] arr = { 25, 24, 12, 76, 101, 96, 28 }; for (int i = 0; i < arr.length - 1; i++) { // 定義內(nèi)層循環(huán) for (int j = 0; j < arr.length - i - 1; j++) { if (arr[j] > arr[j + 1]) { // 比較相鄰元素 // 下面的三行代碼用于交換兩個(gè)元素 int temp = arr[j];
9、arr[j] = arr[j + 1]; arr[j + 1] = temp; } } } for (int i = 0; i < arr.length; i++) { System.out.print(arr[i] + " "); // 打印元素和空格 } } } 第3章 面向?qū)ο螅ㄉ希? 一、填空題 1、封裝、繼承、多態(tài) 2、new 3、成員變量、局部變量 4、類(lèi)、類(lèi) 5、this 6、finalize() 7、靜態(tài)變量 8、內(nèi)部類(lèi) 9、javadoc 10、private 二、判斷題 1、對(duì)
10、2、對(duì) 3、錯(cuò) 4、對(duì) 5、錯(cuò) 三、選擇題 1、B 2、D 3、B 4、ABC 5、ABCD 6、ACD 7、ABCD 8、ABCD 9、D 10、D 四、程序分析題 1、程序不能編譯通過(guò),因?yàn)樵陬?lèi)A中的成員變量secret用private修飾,所以在類(lèi)Test1中無(wú)法訪問(wèn)。 2、程序不能編譯通過(guò),因?yàn)樵陟o態(tài)方法method()中不能訪問(wèn)非靜態(tài)成員變量x。 3、程序能夠編譯通過(guò),運(yùn)行的結(jié)果為“inner”。 五、簡(jiǎn)答題 1、構(gòu)造方法是類(lèi)的一個(gè)特殊成員,它會(huì)在類(lèi)實(shí)例化對(duì)象時(shí)被自動(dòng)調(diào)用。而普通方法只有在使用的時(shí) 候才會(huì)被調(diào)用。在定義構(gòu)造方法時(shí)要求方
11、法名與類(lèi)名相同、在方法名的前面沒(méi)有返回值類(lèi)型的聲 明、在方法中不能使用return語(yǔ)句返回一個(gè)值 2、單例模式可以保證在整個(gè)程序運(yùn)行期間針對(duì)該類(lèi)只存在一個(gè)實(shí)例對(duì)象。 六、編程題 1、參考答案 class Student { private String name; private double grade; public Student() { } public Student(String name, double grade) { this.name = name; this.grade = grade; } public Strin
12、g getName() { return name; } public void setName(String name) { this.name = name; } public double getGrade() { return grade; } public void setGrade(double grade) { this.grade = grade; } } public class Test01 { public static void main(String[] args) { Student stu1 = n
13、ew Student(); stu1.setName("zhangsan"); stu1.setGrade(99); Student stu2 = new Student("lisi", 100); } } 2、參考答案 class Father { private String name = "zhangjun"; class Child { public void introFather() { System.out.println("My Father's name is " + name); } } } public cl
14、ass Test02 { public static void main(String[] args) { Father.Child child = new Father().new Child(); child.introFather(); } } 第4章 面向?qū)ο螅ㄏ拢? 一、填空題 1、繼承 2、方法,抽象類(lèi) 3、import 4、子類(lèi)、父類(lèi)、基類(lèi) 5、Exception 6、final 7、super 8、Object 9、try、catch 10、jar –cvf,java –jar 二、判斷題 1、錯(cuò) 2、對(duì) 3、錯(cuò)
15、4、對(duì) 5、對(duì) 三、選擇題 1、B 2、C 3、ABC 4、 ABCD 5、C 6、AC 7、C 8、D 9、A 10、B 四、程序分析題 1、程序編譯能通過(guò),這是因?yàn)閕nt x = 2 / 0; System.out.println(x);這兩條語(yǔ)句使用了try塊,捕獲了程序因?yàn)槌?而產(chǎn)生的異常情況,之后程序會(huì)繼續(xù)向下執(zhí)行,輸出“進(jìn)入catch代碼塊”,“進(jìn)入finally代碼塊”。 2、程序編譯不通過(guò),這是因?yàn)樵诔绦蛑惺褂昧薴inal關(guān)鍵字修飾Animal類(lèi),使得Animal類(lèi)不能被繼承。shout()方法中同樣使用了final關(guān)鍵字,使
16、得該方法不能被重寫(xiě)。 3、程序編譯能通過(guò),輸出結(jié)果為“動(dòng)物叫!”和“汪汪……”,因?yàn)樵诔绦蛑姓{(diào)用shout()方法時(shí),首先會(huì)通過(guò)super.shout()調(diào)用父類(lèi)的方法說(shuō)出“動(dòng)物叫!”之后再輸出“汪汪……” 4、程序編譯不通過(guò),因?yàn)榻涌谥卸x的方法不能有方法體,所以定義的eat()方法是錯(cuò)誤的。接口中的方法必須在子類(lèi)中全部實(shí)現(xiàn),由于run()方法在子類(lèi)中并沒(méi)有重新實(shí)現(xiàn),所以這也是錯(cuò)誤的。 五、簡(jiǎn)答題 1、在繼承關(guān)系中,子類(lèi)的方法與父類(lèi)的某一方法具有相同的方法名、返回類(lèi)型和參數(shù)列表,則稱(chēng)子類(lèi)的該方法重寫(xiě)(覆蓋)父類(lèi)的方法。 2、多態(tài)意味著一個(gè)對(duì)象有著多種形態(tài),可以在特定的情況下,表現(xiàn)不
17、同的狀態(tài),從而對(duì)應(yīng)著不同的屬性和方法。簡(jiǎn)單的說(shuō),多態(tài)就是使用父類(lèi)類(lèi)型的變量引用子類(lèi)對(duì)象,根據(jù)被引用子類(lèi)對(duì)象的特性,程序會(huì)得到不同的運(yùn)行效果。 3、在Java中,使用abstract關(guān)鍵字修飾的類(lèi)稱(chēng)之為抽象類(lèi)。抽象類(lèi)是不能被實(shí)例化的,通常需要寫(xiě)一個(gè)子類(lèi)來(lái)繼承抽象類(lèi),同時(shí)實(shí)例化子類(lèi)來(lái)獲得該類(lèi)的對(duì)象。抽象類(lèi)通常用于表示一種抽象的概念。 接口可以說(shuō)是一種特殊的抽象類(lèi),接口中只能定義常量和抽象方法。由于接口的特殊性,在定義時(shí)需要使用interface關(guān)鍵字。 六、編程題 1、參考答案 class Student { public String name; public int age;
18、 public Student(String name,int age){ this.name=name; this.age=age; } public void show(){ System.out.println("name: "+name+" age: "+age); } } class UnderGraduate extends Student{ public String degree; public UnderGraduate(String name,int age,String degree){ super(name, age)
19、; this.degree=degree; } public void show(){ System.out.println("name: "+name+" age: "+age+" degree: "+degree); } } public class Test01{ public static void main(String[] args) { Student student = new Student("zhangsan", 16); student.show(); UnderGraduate underGraduate = new U
20、nderGraduate("lisi", 20, "bechalor"); underGraduate.show(); } } 2、參考答案 interface Shape { double area(double givenValue); } class Square implements Shape{ public double area(double sideLength) { return sideLength*sideLength; } } class Circle implements Shape{ public double
21、 area(double r) { return Math.PI*r*r; } } public class Test02 { public static void main(String[] args) { Shape square = new Square(); Shape circle = new Circle(); System.out.println(square.area(2)); System.out.println(circle.area(3)); } } 3、參考答案 class NoThisSongExcepti
22、on extends Exception{ public NoThisSongException(){ super(); } public NoThisSongException(String message){ super(message); } } class Player{ public void play(int index)throws NoThisSongException{ if(index>10){ throw new NoThisSongException("您播放的歌曲不存在"); } System.out.pr
23、intln("正在播放歌曲"); } } public class Test03 { public static void main(String[] args) { Player player = new Player(); try { player.play(13); } catch (NoThisSongException e) { System.out.println("異常信息為: "+e.getMessage()); } } } 第5章 多線程 一、填空題 1、 線程、通信 2、 Thread、Runnable
24、3、 就緒 4、 synchronized、對(duì)象、this 5、 進(jìn)程 6、 新建狀態(tài)(New)、就緒狀態(tài)(Runnable)、運(yùn)行狀態(tài)(Running)、阻塞狀態(tài)(Blocked)、死亡狀態(tài)(Terminated) 7、 10、1 8、 開(kāi)啟一個(gè)新線程、run()方法 9、 wait()、notify()、notifyAll() 10、setDaemon(true)、start() 二、判斷題 1、錯(cuò) 2、對(duì) 3、對(duì) 4、錯(cuò) 5、錯(cuò) 三、選擇題 1、B 2、AC 3、ABC 4、BC 5、ABD 6、ABC 7、C 8、D
25、 9、AB 10、ABCD 四、程序分析題 1、程序不能編譯通過(guò),因?yàn)镽unHandler類(lèi)沒(méi)有實(shí)現(xiàn)Runnable接口,因此RunHandler的實(shí)例對(duì)象不能作為參數(shù)傳遞給Thread的構(gòu)造方法。 2、程序不能編譯通過(guò),因?yàn)門(mén)hread的子類(lèi)A重寫(xiě)的run()方法的訪問(wèn)級(jí)別不能低于父類(lèi)run()方法的。訪問(wèn)級(jí)別 3、程序不能編譯通過(guò),因?yàn)橥椒椒ㄖ姓{(diào)用wait()方法的對(duì)象必須為同步鎖對(duì)象。 4、t.start(); 五、簡(jiǎn)答題 1、一種是繼承java.lang包下的Thread類(lèi),覆寫(xiě)Thread類(lèi)的run()方法,在run()方法中實(shí)現(xiàn)運(yùn)行在線程上的代碼。 new T
26、hread() { public void run(){} }.start(); 另一種就是實(shí)現(xiàn)java.lang.Runnable接口,同樣是在run()方法中實(shí)現(xiàn)運(yùn)行在線程上的代碼。 new Thread(new Runnable(){ public void run(){} }).start() 2、調(diào)用sleep()方法,正在執(zhí)行的線程主動(dòng)讓出CPU去執(zhí)行其他線程,在sleep()方法指定的時(shí)間過(guò)后,CPU才會(huì)回到這個(gè)線程上繼續(xù)往下執(zhí)行,如果當(dāng)前線程進(jìn)入了同步鎖,sleep()方法并不會(huì)釋放鎖,即使當(dāng)前線程使用sleep()方法讓出了CPU,但其
27、它被同步鎖擋住了的線程也無(wú)法得到執(zhí)行。wait()在一個(gè)已經(jīng)進(jìn)入了同步鎖的線程內(nèi)進(jìn)行調(diào)用,讓當(dāng)前線程暫時(shí)讓出同步鎖,以便其它正在等待此鎖的線程可以得到同步鎖并運(yùn)行。當(dāng)其它線程調(diào)用了notify()方法后,調(diào)用wait()方法的線程就會(huì)解除wait狀態(tài),當(dāng)再次獲得同步鎖后,程序可以繼續(xù)向下執(zhí)行。 六、編程題 1、參考答案 public class MyThread extends Thread{ public MyThread(String name) { super(name); } public void run() {
28、System.out.println(this.getName()); } public static void main(String[] args) { new MyThread("Thread1").start(); new MyThread("Thread2").start(); } } 2、參考答案 public class MyRunnable implements Runnable { public void run() { for (int i = 0; i < 50; i++) { System.out.println("
29、new"); } } public static void main(String[] args) { new Thread(new MyRunnable()).start(); for (int i = 0; i < 100; i++) { System.out.println("main"); } } } 3、參考答案 public class Test01 { public static void main(String[] args) { Teacher t = new Teacher(); new Thread(t,
30、"陳老師").start(); new Thread(t, "高老師").start(); new Thread(t, "李老師").start(); } } class Teacher implements Runnable { private int notes = 80; public void run() { while (true) { dispatchNotes(); // 調(diào)用售票方法 if (notes <= 0) { break; } } } private synchronized void
31、dispatchNotes() { if (notes > 0) { try { Thread.sleep(10); // 經(jīng)過(guò)的線程休眠10毫秒 } catch (InterruptedException e) { e.printStackTrace(); } System.out.println(Thread.currentThread().getName() + "---發(fā)出的筆記" + notes--); } } } 4、參考答案 public class Accumulator extends Th
32、read { private int stratNum; public static int sum; public Accumulator(int startNum) { this.stratNum = startNum; } public static synchronized void add(int num) { sum += num; } public void run() { int sum = 0; for (int i = 0; i < 10; i++) { sum += stratNum + i; } a
33、dd(sum); } public static void main(String[] args) throws Exception { Thread[] threadList = new Thread[10]; for (int i = 0; i < 10; i++) { threadList[i] = new Accumulator(10 * i + 1); threadList[i].start(); } for (int i = 0; i < 10; i++) { threadList[i].join(); } Sys
34、tem.out.println("Sum is : " + sum); } } 第6章 JavaAPI 一、填空題 1、 String、StringBuffer 2、 Date、Calendar、DateFormat 3、 getRuntime() 4、 sqrt() 5、 DateFormat 6、 π、e 7、 Random、java.util 8、 length() 9、 靜態(tài) 10、edcba 二、判斷題 1、錯(cuò) 2、錯(cuò) 3、對(duì) 4、錯(cuò) 5、對(duì) 三、選擇題 1、C 2、C 3、D 4、C 5、C 6、B 7、C
35、 8、A 9、A 10、B 四、程序分析題 1、程序編譯能通過(guò),輸出結(jié)果如下 5 7.0 -8.0 -5 8.1 -6.1 2、程序編譯能通過(guò),輸出結(jié)果如下 str.length():15 str.charAt(0):d lastIndexOf(m):10 substring(2,4):fe indexOf(g):5 五、簡(jiǎn)答題? 1、String類(lèi)是不可變類(lèi),即字符串值一旦初始化后就不可能改變。StringBuffer是可變字符串類(lèi),類(lèi)似String的緩沖區(qū),可以修改字符串的值。 2、Date類(lèi)用來(lái)表示某個(gè)特定的瞬間,能夠精確到毫秒。而在實(shí)際應(yīng)用中,
36、往往需要把一個(gè)日期中的年、月、日等信息單獨(dú)返回進(jìn)行顯示或處理,這個(gè)類(lèi)中的大部分方法都已被標(biāo)記過(guò)時(shí)。Calender類(lèi)基本取代了Date類(lèi),該類(lèi)中定義了一系列用于完成日期和時(shí)間字段操作的方法。 Calendar的getTime()方法,getTime()返回一個(gè)表示Calendar時(shí)間值的Date對(duì)象,同時(shí)Calendar有一個(gè)setTime(Date date)方法,setTime()方法接收一個(gè)Date對(duì)象,將Date對(duì)象表示的時(shí)間值設(shè)置給Calendar對(duì)象,通過(guò)這兩個(gè)方法就可以完成Date和Calendar對(duì)象之間的轉(zhuǎn)換。 六、編程題 1、 參考答案 public class
37、Test01 { public static void main(String[] args) { String str = "HelloWorld"; // 字符串轉(zhuǎn)成char數(shù)組 char[] ch = str.toCharArray(); StringBuffer buffer = new StringBuffer(); for (int i = str.length() - 1; i >= 0; i--) { if (ch[i] >= 'A' && ch[i] <= 'Z') { buffer.append(String.valueO
38、f(ch[i]).toLowerCase()); } else if (ch[i] >= 'a' && ch[i] <= 'z') { buffer.append(String.valueOf(ch[i]).toUpperCase()); } } System.out.println(buffer.toString()); } } 2、 參考答案 import java.text.DateFormat; import java.util.Calendar; import java.util.Date; public class Test02
39、 { public static void main(String[] args) { Calendar calendar = Calendar.getInstance(); calendar.add(Calendar.DATE, 100); Date date = calendar.getTime(); DateFormat format = DateFormat.getDateInstance(DateFormat.FULL); String string = format.format(date); System.out.println(strin
40、g); } } 3、 參考答案 import java.util.Random; public class Test03 { public static void main(String[] args) { Random rand = new Random(); int[] num = new int[5]; for (int i = 0; i < num.length; i++) { num[i] = 20 + rand.nextInt(31); Syste
41、m.out.println(num[i]); } } } 第7章 集合類(lèi) 一、填空題 1、集合 2、Comparator 3、有序、可重復(fù),無(wú)序、不可重復(fù) 4、hashNext()、next() 5、Collection、Map 6、鍵、值 7、ListIterator 8、ArrayList、LinkedList,HashSet、TreeSet,HashMap、TreeMap 9、put()、get() 10、Collections、Arrays 二、判斷題 1、錯(cuò) 2、對(duì) 3、對(duì) 4、錯(cuò) 5、對(duì)
42、三、選擇題 1、BC 2、A 3、D 4、ABD 5、C 6、AB 7、D 8、AB 9、ABC 10、B 四、程序分析題 1、程序可以編譯通過(guò),輸出結(jié)果是“a、b、c”,因?yàn)門(mén)reeSet集合不允許存放重復(fù)元素,第2次增加的元素c會(huì)覆蓋之前存入的元素c,所以輸出結(jié)果是“a、b、c”,而不是“a、b、c、c”。 2、程序不可以編譯通過(guò),這是由于向ArrayList集合中存入元素時(shí),集合并不能記住元素的類(lèi)型,因此在取出元素時(shí),只能使用Object類(lèi)型,而不能使用String類(lèi)型。 3、程序可以編譯通過(guò),但是什么也沒(méi)有打印。使用ListIterator
43、進(jìn)行從后向前的遍歷集合,可以使用以下兩種方法,一是使用listIterator(int index)方法將索引index的值設(shè)置為集合元素的數(shù)目,也就是ListIterator it = list.listIterator(3);,二是將程序先從前向后遍歷,然后再?gòu)暮笙蚯氨闅v。 4、程序編譯不通過(guò),由于Map集合在遍歷的過(guò)程中不能使用集合對(duì)象本身刪除元素,這會(huì)導(dǎo)致并發(fā)修改異常,若想刪除集合中的元素,可以使用Iterator的remove()方法。 五、簡(jiǎn)答題 1、為了使程序能方便的存儲(chǔ)和操作數(shù)目不固定的一組數(shù)據(jù),JDK提供了一套類(lèi)庫(kù),這些類(lèi)都位 于java.util包中,統(tǒng)稱(chēng)為集合。集
44、合框架中包含3個(gè)接口,分別是List、Set、Map。 2、List的特點(diǎn)是元素有序、元素可重復(fù)。List接口的主要實(shí)現(xiàn)類(lèi)有ArrayList和LinkedList。Set的特點(diǎn)是元素?zé)o序、元素不可重復(fù)。Set接口的主要實(shí)現(xiàn)類(lèi)有HashSet和TreeSet。Map的特點(diǎn)是存儲(chǔ)的元素是鍵(Key)、值(Value)映射關(guān)系,元素都是成對(duì)出現(xiàn)的。Map接口的主要實(shí)現(xiàn)類(lèi)有HashMap和TreeMap。 3、Collection是一個(gè)單例集合接口。它提供了對(duì)集合對(duì)象進(jìn)行基本操作的通用方法。Collections是一個(gè)工具類(lèi)。它包含各種有關(guān)集合操作的方法。 六、編程題 1、參考答案 imp
45、ort java.util.*; public class Test01 { public static void main(String[] args) { ArrayList list = new ArrayList(); for(int i = 0; i < 10; i++) { list.add("A"+i); } Iterator it = list.iterator(); while(it.hasNext()) { Object obj = it.next();
46、System.out.println(obj); } } } 2、參考答案 import java.util.*; public class Test02 { public static void main(String[] args) { HashSet hashSet = new HashSet(); Person p1 = new Person("Jack",25); Person p2 = new Person("Rose",23); Person p3 = new Person("Jack",27); hashSet.add
47、(p1); hashSet.add(p2); hashSet.add(p3); for(Object obj:hashSet){ Person p=(Person)obj; System.out.println(p.name+":"+p.age); } } } class Person{ String name; int age; public Person(String name, int age) { super(); this.name = name; this.age = age; } public
48、int hashCode() { return name.hashCode(); } public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; Person other = (Person) obj; return other.name.equals(this.name); } } 3、參考答案 import java.util.*; public class Test03 { pub
49、lic static void main(String[] args) { TreeMap map = new TreeMap(new MyComparator()); map.put("1", "Lucy"); map.put("2", "Lucy"); map.put("3", "John"); map.put("4", "Smith"); map.put("5", "Amanda"); for (Object key : map.keySet()) { System.out.println(key + ":" + map.get(key)); } } } class MyComparator implements Comparator { public int compare(Object obj1, Object obj2) { String ele1 = (String) obj1; String ele2 = (String) obj2; return pareTo(ele1); } }
- 溫馨提示:
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. 裝配圖網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 中西方家庭教育的對(duì)比ppt課件
- 《運(yùn)籌學(xué)教程》第五版運(yùn)籌學(xué)6對(duì)策論矩陣對(duì)策課件
- (部編版)統(tǒng)編版四年級(jí)語(yǔ)文下冊(cè)第2課《鄉(xiāng)下人家》ppt課件
- 全等三角形1--公開(kāi)課一等獎(jiǎng)ppt課件
- 《會(huì)跳舞樹(shù)葉娃娃》課件
- 9兒童詩(shī)兩首_人教版五年級(jí)的語(yǔ)文下冊(cè)課件
- 綠色植物是食物之源(我的課件)0
- 河南專(zhuān)版2022春八年級(jí)語(yǔ)文下冊(cè)第四單元16慶祝奧林匹克運(yùn)動(dòng)復(fù)興25周年習(xí)題課件新人教版
- 全國(guó)xx杯說(shuō)課大賽機(jī)械類(lèi)一等獎(jiǎng)作品:鉗工車(chē)模的制作說(shuō)課ppt課件
- 六年級(jí)下冊(cè)數(shù)學(xué)ppt課件-總復(fù)習(xí)(1)數(shù)的認(rèn)識(shí)-整數(shù)∣北師大版
- 牛頓第二定律優(yōu)秀完整公開(kāi)課ppt課件
- 調(diào)脂與卒中防治課件
- 點(diǎn)到平面的距離課件
- 聚焦新醫(yī)改形勢(shì)下的醫(yī)院發(fā)展戰(zhàn)略
- 四肢血管超聲基礎(chǔ)