作业09-集合与泛型

Posted 201621123077黄泽鑫

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了作业09-集合与泛型相关的知识,希望对你有一定的参考价值。

1. 本周学习总结

1.1 以你喜欢的方式(思维导图或其他)归纳总结集合与泛型相关内容。

2. 书面作业

本次作业题集集合

1. List中指定元素的删除(题集题目)

1.1 实验总结。并回答:列举至少2种在List中删除元素的方法。

(1)
在用for循环add进去元素之后,接下来的remove操作中,其本身会将被删除的下一位元素都会依次向前填充,所以需要在list进行remove操作完之后进行i--,这样可以使每个元素都得遍历。
(2)
而如果重后头遍历,在进行remove操作之后list数组不用进行向前填充,所以不需要进行i--。

2. 统计文字中的单词数量并按出现次数排序(题集题目)

2.1 伪代码(不得复制代码,否则扣分)

1.创建一个TreeMap的对象map,然后输入逐次输入str,并判断如果该str不存在就将它put入str中,并将键值初始化为1,反之,获得str的相应键值并+1存入map中。
2.创建一个List<Entry<String , Integer>>的对象list,并吧map的元素放入list当中。
3.使用Collections.sort对数组进行自定义排序
4.输出ma\'p的size和list中的每一个map

2.2 实验总结

利用TreeMap进行存储,因为一般来说TreeMap不会存储重复的元素,而且时实现自动排序。

3. 倒排索引(题集题目)

本题较难,做不出来不要紧。但一定要有自己的思考过程,要有提交结果。

3.1 截图你的代码运行结果

3.2 伪代码(不得复制代码,否则扣分)

1.创建一个HashMap;
2.然后构造一个List<Entry<String , Set<Integer>>> 的对象list用来存储map中的元素;
3.如果加入 的key在map中不存在,则将它放入map中并将当前行数输入到value中;
4.之后用foreach循环输出list中的元素的行数。

3.3 实验总结

要将map中的value值定义为ArrayList类型,这样可以存储单词行数。

4.Stream与Lambda

编写一个Student类,属性为:

private Long id; private String name; private int age; private Gender gender;//枚举类型 private boolean joinsACM; //是否参加过ACM比赛
创建一集合对象,如List,内有若干Student对象用于后面的测试。

4.1 使用传统方法编写一个搜索方法List<Student> search(List<Student> stuList, Long id, String name, int age, Gender gender, boolean joinsACM),然后调用该方法将id>某个值,name为某个值, age>某个值, gender为某个值,参加过ACM比赛的学生筛选出来,放入新的集合。在main中调用,然后输出结果。(截图:出现学号、姓名)



4.2 使用java8中的stream(), filter(), collect()编写功能同4.1的代码,并测试(要出现测试数据)。构建测试集合的时候,除了正常的Student对象,再往集合中添加一些null,你编写的方法应该能处理这些null而不是抛出异常。(截图:出现学号)

测试数据:

输出结果:

5. 泛型类:GeneralStack

题集jmu-Java-05-集合之GeneralStack

5.1 GeneralStack接口的代码

5.2 结合本题与以前作业中的ArrayListIntegerStack相比,说明泛型有什么好处

泛型的所有对象均为is-object,其存储内部也仅仅时是object;
ArrayListIntegerStack相比,泛型的类型更加安全,并且可以消除强制类型的转换,而且在编写代码时,能有更高的效率。

3.码云及PTA

题目集:jmu-Java-05-集合

3.1. 码云代码提交记录

在码

云的项目中,依次选择“统计-Commits历史-设置时间段”, 然后搜索并截图

3.2 截图PTA题集完成情况图

需要有两张图(1. 排名图。2.PTA提交列表图)

3.3 统计

本周完成的代码量

|周次|总代码量|新增代码量|总文件数|新增文件数||
|-

以上是关于作业09-集合与泛型的主要内容,如果未能解决你的问题,请参考以下文章

作业09-集合与泛型

作业09-集合与泛型

作业09-集合与泛型

作业09-集合与泛型

作业09-集合与泛型

作业09-集合与泛型 java