《實(shí)驗(yàn)11泛型與集合【參照內(nèi)容】》由會員分享,可在線閱讀,更多相關(guān)《實(shí)驗(yàn)11泛型與集合【參照內(nèi)容】(4頁珍藏版)》請?jiān)谘b配圖網(wǎng)上搜索。
1、
實(shí)驗(yàn)內(nèi)容:
(1) 定義一個(gè)泛型類 Instrument,其中包括一個(gè)泛型方法 void play(E x)。
定義兩種樂器類:Cello、Violin 可以進(jìn)行演奏。定義一個(gè)測試類進(jìn)行測試。
package ex111;
public class Violin {
public String toString()
{
System.out.println("violin.........");
return "";
}
}
package ex111;
publi
2、c class Test_Main {
public static void main(String[] args) {
instrumentmodel = new instrument();
instrumentmodel1 = new instrument();
Cello cello = new Cello();
Violin violin = new Violin();
model.play(
3、cello);
model1.play(violin);
}
}
package ex111;
class instrument {//泛型類
void play(E x)
{
x.toString();
}
}
package ex111;
public class Cello {
public String toString(){
System.out.println("cello.........");
return ""
4、;
}
}
(2) 輸入 10 個(gè)數(shù)字保存到 List 中,并按倒序顯示出來。
package ex112;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Scanner;
public class Test{
public static void main(final String[] args) {
final List integers = new ArrayList();
5、
final Scanner scanner = new Scanner(System.in);
for (int i = 1; i <= 3; i++) {
try {
System.out.println("輸入第" + i + "個(gè)數(shù)吧");
final int input = Integer.parseInt(scanner.next());
integers.add(input);
}
catch (final Throwable e) {
System.err.println("這不是個(gè)數(shù)字
6、,我可是超級程序");
i--;
continue;
}
}
//Collections.sort(integers);// 自然排
Collections.reverse(integers);// 倒排
for (final Integer integer : integers) {
System.out.println(integer);
}
}
} System.out.println(integer);
}
}
}
package ex113;
import java.ut
7、il.HashMap;
import java.util.Map;
public class Test {
public static void main(String[] args) {
Map map=new HashMap();
Sort s=new Sort();
s.creatMap(map);
s.Sort(map);
}
}
(3) 編寫一個(gè)程序,把學(xué)生名和考試分?jǐn)?shù)錄入到 Map
8、中,并按分?jǐn)?shù)顯示前
三名學(xué)生的名字。要求定義 Student 類,封裝學(xué)生名和考試分?jǐn)?shù) 2 個(gè)屬性及方法。、TreeMap、 TreeSet;
package ex113;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.Set;
p
9、ublic class Student {
private String name;
private int score;
public Student(){
}
public Student(String name,int score) {
this.name=name;
this.score=score;
}
public String getName() {
return name;
}
publi
10、c void setName(String name) {
this.name = name;
}
public int getScore() {
return score;
}
public void setScore(int score) {
this.score = score;
}
}
package ex113;
import java.util.ArrayList;
import java.util.Collection;
11、
import java.util.Collections;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.Scanner;
import java.util.Set;
public class Sort {
public void creatMap(Map map){
Scanner input=new Scanner(System.in);
12、
System.out.println("請輸入學(xué)生人數(shù)");
int number=input.nextInt();
System.out.println("請輸入學(xué)生姓名和分?jǐn)?shù):");
for(int i=0;i
13、
}
}
public void Sort(Map map){
Collection score = map.values();
Set set=new HashSet();
for(Integer s:score)
set.add(s);
Listlist=new ArrayList(set);
14、 Collections.sort(list);
Collections.reverse(list);
Set name = map.keySet();
System.out.println("前三名學(xué)生的姓名是:");
int m=0;
for(Integer i:list){
m++;
if(m<=3){
for(String s:name)
{
if(i==map.get(s))
System.out.println("第"+m+"名:"+s);
}
}
}
}
}
4
材料a