java集合框架(习题与答案)资料

for(int i=0;i

sum+=((Student)l.get(i)).getScore();

}

System.out.println(sum/l.size()); } } }

class Student{

private String name;

private int age;

private int score;

private String classNum;

public Student(String name, int age, int score, String classNum) {

super();

this.name = name;

this.age = age;

this.score = score;

this.classNum = classNum;

}

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

public int getAge() {

return age;

}

public void setAge(int age) {

this.age = age;

}

public int getScore() {

return score;

}

public void setScore(int score) {

this.score = score;

}

public String getClassNum() {

return classNum;

}

public void setClassNum(String classNum) {

this.classNum = classNum;

} }

24. **(综合)已知有十六支男子足球队参加2008 北京奥运会。写一个程序,把这16 支球队随机分为4 个组。 注:参赛球队列表见附录

注2:使用Math.random 来产生随机数。 import java.util.ArrayList;

import java.util.List;

import java.util.Random;

public class BK24 {

public static void main(String[] args) {

List teamList = new ArrayList();

teamList.add(\科特迪瓦\

teamList.add(\阿根廷\

teamList.add(\澳大利亚\

teamList.add(\塞尔维亚\

teamList.add(\荷兰\

teamList.add(\尼日利亚\

teamList.add(\日本\

teamList.add(\美国\

teamList.add(\中国\

teamList.add(\新西兰\

teamList.add(\巴西\

teamList.add(\比利时\

teamList.add(\韩国\

teamList.add(\喀麦隆\

teamList.add(\洪都拉斯\

teamList.add(\意大利\

List groupList = new ArrayList();

groupList.add(new ArrayList());

groupList.add(new ArrayList());

groupList.add(new ArrayList());

groupList.add(new ArrayList());

for(int i=0;i

int groupIndex=0;

do{

Random random=new Random();

groupIndex=random.nextInt(4);

System.out.println(groupIndex);

}while(((List)groupList.get(groupIndex)).size()==4);

List l=(List)groupList.get(groupIndex);

l.add(teamList.get(i));

}

for(int i=0;i

List list=(List)groupList.get(i);

for(int j=0;j

//System.out.println(list.size());

System.out.print(list.get(j)+\ \

}

System.out.println();

} } }

25. **(综合)写一个MyStack 类,表示“栈”这种数据结构。

栈在表示上,就如同一个单向开口的盒子,每当有新数据进入时,都是进入栈顶。其基 本操作为push 和pop。push 表示把一个元素加入栈顶,pop 表示把栈顶元素弹出。 示意图如下:

栈的特点:先进后出。

栈的基本操作:

1) push(Object o):表示把元素放入栈

2) Object pop():返回栈顶元素,并把该元素从栈中删除。如果栈为空,则返回 null 值 3) Object peek():返回栈顶元素,但不把该元素删除。如果栈为空,则返回null值。 4) boolean isEmpty():判断该栈是否为空 5) int size():返回该栈中元素的数量 要求:

1) 利用List,实现栈。

2) 讨论:应当用ArrayList 作为实现类还是用LinkedList?为什么? 附录

1. 截止到2009 年为止,历届世界杯冠 集合框架(习题)\target=\

href=\mg.cn/orignal/714a8371t9dba8c199f16\集合框架(习题)\src=\>

联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4