集合作业分享

1.写一个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?为什么?
集合作业分享
集合作业分享2.产生10个1-100的随机数,并放到一个数组中,把数组中大于等于10的数字放到一个list集合中,并打印到控制台
集合作业分享3、假设顺序列表ArrayList中存储的元素是整型数字1~5,遍历每个元素,将每个元素顺序输出。(3种方法)
集合作业分享4、现在有一个map集合如下:
Map<Integer,String> map = new HashMap<Integer, String>();
map.put(1, “张三丰”);
map.put(2, “周芷若”);
map.put(3, “汪峰”);
map.put(4, “灭绝师太”);
要求:
1.遍历集合,并将序号与对应人名打印。
2.向该map集合中插入一个编码为5姓名为李晓红的信息
3.移除该map中的编号为1的信息
4.将map集合中编号为2的姓名信息修改为"周林"*/
集合作业分享5、有如下Student 对象,
private String name;
private int age;
private int score;
private String classNum;

其中,classNum 表示学生的班号,例如“class05”。 有如下List
List list = new ArrayList();

list.add(new Student(“Tom”, 18, 100, “class05”));
list.add(new Student(“Jerry”, 22, 70, “class04”));
list.add(new Student(“Owen”, 25, 90, “class05”));
list.add(new Student(“Jim”, 30,80 , “class05”));
list.add(new Student(“Steve”, 28, 66, “class06”));
list.add(new Student(“Kevin”, 24, 100, “class04”));
在这个list 的基础上,完成下列要求:
1) 计算所有学生的平均年龄
2) 计算各个班级的平均分
集合作业分享