201621123086 《Java程序设计》第9周学习总结
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了201621123086 《Java程序设计》第9周学习总结相关的知识,希望对你有一定的参考价值。
1. 本周学习总结
1.1 以你喜欢的方式(思维导图或其他)归纳总结集合与泛型相关内容。
- 泛型的主要目的之一就是用来指定容器要持有什么类型的对象,而且由编译器来保证类型的正确性。
- 元组 (tuple) ,它是将一组对象直接打包存储于其中的一个单一对象。
- 泛型也可以应用于方法,与其所在的类是否是泛型没有关系。该方法能够独立于类而产生变化。
- 泛型还可以应用于内部类以及匿名内部类。
- Java泛型是使用擦除来实现的,这意味着在使用泛型时,任何具体的类型信息都被擦除了。我们可以用
extends
来声明具有某个具体类型,随后便可以安全的在泛型类的方法中调用某个类型参数特有的方法。 - 根据上面的特性可知,我们只在需要代码能够跨多个类型工作时才需要使用泛型。
- 擦除的弊端在于此类中的转型、
instancof
操作、new
表达式都是无效的。 - 通配符:
<? extends OBJ>
与<? super OBJ>
但这并不意味着参数类型可以向上转型,只代表参数类型至少具有声明的类型,编译器也将直接拒绝对参数列表中涉及通配符的方法的调用。
2. 书面作业
1. List中指定元素的删除(题集题目)
1.1 实验总结。并回答:列举至少2种在List中删除元素的方法。
- 我们可以通过将文本放入
Scanner
并调用next()
方法来分离字符串 - 使用
List.remove()
方法来删除元素,while(list.contains(str))
来判断删除是否完全
- 使用
- 使用
iterator.next()
来遍历,str.equals(str)
判断元素,用iterator.remove()
来删除元素
- 使用
2. 统计文字中的单词数量并按出现次数排序(题集题目)
2.1 伪代码(不得复制代码,否则扣分)
while()
if(当字符串为!!!!!!)
停止循环
if(字符串在map中不存在)
将字符串存入并设置其value为1
if(存在)
将其value+1并存入
调用Collections.sort并编写内部类
value不相同
返回value差值
如果value相同
返回key值差值
foreach
输出
2.2 实验总结
- 此题排序的要点在于新建一个List并将map中的每个entry放入此List并进行排序,而非对原map进行操作。完成此题时,我在排完序后输出的是原map,导致了错误。在经过老师指正后理解了排序的实现方法。
3. 倒排索引(题集题目)
3.1 截图你的代码运行结果
以上是关于201621123086 《Java程序设计》第9周学习总结的主要内容,如果未能解决你的问题,请参考以下文章
201621123086 《Java程序设计》第12周学习总结
201621123086 《Java程序设计》第10周学习总结
201621123086 《Java程序设计》第14周学习总结