201521123109《java程序设计》第八周学习总结
1. 本周学习总结
1.1 以你喜欢的方式(思维导图或其他)归纳总结集合与泛型相关内容。
1.2 选做:收集你认为有用的代码片段

2. 书面作业
本次作业题集集合
List中指定元素的删除(题目4-1)
1.1 实验总结
主要是编写remove等方法删除与str内容相同的元素。

统计文字中的单词数量并按出现次数排序(题目5-3)
2.1 伪代码(简单写出大体步骤)
部分代码:
while(true)
        {
            str=sc.next();
            if(str.equals("!!!!!"))break;
            if(dic.containsKey(str))
            {
                Integer i=dic.get(str);
                i++;
                dic.put(str,i);
            }
            else
            {
                dic.put(str,1);
            }
        }
2.2 实验总结
主要是对HashMap和sort方法的应用,用一个while循环将单词存入HashMap中,然后用sort方法进行排序。
倒排索引(题目5-4)
3.1 截图你的提交结果(出现学号)

3.2 伪代码(简单写出大体步骤)
先建立一个new TreeMap,然后if(str.equals("!!!!!"))break,再遍历TreeMap,建立索引,最后输出。
3.3 实验总结
要用很多的种集合类型,利用多个map查找关键词,用好键与值的关系。
Stream与Lambda
编写一个Student类,属性为:
private Long id;
private String name;
private int age;
private Gender gender;//枚举类型
private boolean joinsACM; //是否参加过ACM比赛
创建一集合对象,如List,内有若干Student对象用于后面的测试。
4.1 使用传统方法编写一个方法,将id>10,name为zhang, age>20, gender为女,参加过ACM比赛的学生筛选出来,放入新的集合。在main中调用,然后输出结果。
4.2 使用java8中的stream(), filter(), collect()编写功能同4.1的函数,并测试。
4.3 构建测试集合的时候,除了正常的Student对象,再往集合中添加一些null,然后重新改写4.2,使其不出现异常。
泛型类:GeneralStack(题目5-5)
5.1 截图你的提交结果(出现学号)

5.2 GeneralStack接口的代码
interface GeneralStack<T>{
    public T push(T item);
    public T pop();
    public T peek();
    public boolean empty();
    public int size();
}
5.3 结合本题,说明泛型有什么好处
使集合可以存放各种类型的元素,可以直接创建多个不同类型的栈,减少代码量,消除强制转化,避免更多出错。
泛型方法
基础参考文件GenericMain,在此文件上进行修改。
6.1 编写方法max,该方法可以返回List中所有元素的最大值。List中的元素必须实现Comparable接口。编写的max方法需使得String max = max(strList)可以运行成功,其中strList为List类型。也能使得Integer maxInt = max(intList);运行成功,其中intList为List类型。

6.2 选做:现有User类,其子类为StuUser,且均实现了Comparable接口。编写方法max1,基本功能同6.1,并使得max1(stuList);可以运行成功,其中stuList为List类型。
6.3 选做:编写int myCompare(T o1, T o2, Comparator c)方法,该方法可以比较User对象及其子对象,传入的比较器c既可以是Comparator,也可以是Comparator。注意:该方法声明未写全,请自行补全。
选做:逆向最大匹配分词算法
集合实验文件中的第07次实验(集合).doc文件,里面的题目6.
7.1 写出伪代码
7.2 实验总结
选做:JavaFX入门
完成其中的作业1、作业2。内有代码,可在其上进行适当的改造。建议按照里面的教程,从头到尾自己搭建。
3. 码云上代码提交记录及PTA实验总结
题目集:jmu-Java-05-集合
3.1. 码云代码提交记录
在码云的项目中,依次选择“统计-Commits历史-设置时间段”, 然后搜索并截图

3.2. PTA实验
•函数(4-1),编程(5-3,5-4,5-5)
•实验总结已经在作业中体现,不用写。
201521123109《java程序设计》第八周学习总结的更多相关文章
- 201521123027 <java程序设计>第八周学习总结
		1.本周学习总结 1.1思维导图 2.书面作业 Q1.List中指定元素的删除(题目4-1) 1.1 实验总结 总结:判断List中是否存在指定元素,需要用到equals方法,若存在就用remove进 ... 
- 201571030332  扎西平措   《面向对象程序设计Java》第八周学习总结
		<面向对象程序设计Java>第八周学习总结 项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在哪里 https: ... 
- 201871010106-丁宣元 《面向对象程序设计(java)》第八周学习总结
		201871010106-丁宣元 <面向对象程序设计(java)>第八周学习总结 正文开头: 项目 内容 这个作业属于哪个课程 https://home.cnblogs.com/u/nwn ... 
- 20145213《Java程序设计》第九周学习总结
		20145213<Java程序设计>第九周学习总结 教材学习总结 "五一"假期过得太快,就像龙卷风.没有一点点防备,就与Java博客撞个满怀.在这个普天同庆的节日里,根 ... 
- 21045308刘昊阳 《Java程序设计》第九周学习总结
		21045308刘昊阳 <Java程序设计>第九周学习总结 教材学习内容总结 第16章 整合数据库 16.1 JDBC入门 16.1.1 JDBC简介 数据库本身是个独立运行的应用程序 撰 ... 
- 20145236 《Java程序设计》第九周学习总结
		20145236 <Java程序设计>第九周学习总结 教材学习内容总结 第十六章 整合数据库 JDBC简介 1.JDBC是java联机数据库的标准规范.它定义了一组标准类与接口,标准API ... 
- 20155303 2016-2017-2 《Java程序设计》第二周学习总结
		20155303 2016-2017-2 <Java程序设计>第二周学习总结 教材学习内容总结 『注意』 "//"为单行批注符: "/*"与&quo ... 
- 20145237 《Java程序设计》第九周学习总结
		20145237 <Java程序设计>第九周学习总结 教材学习内容总结 第十六章 整合数据库 JDBC入门 ·数据库本身是个独立运行的应用程序 ·撰写应用程序是利用通信协议对数据库进行指令 ... 
- 20175209 《Java程序设计》第九周学习总结
		20175209 <Java程序设计>第九周学习总结 一.教材知识点总结 有关数据库下载中存在可能出现的问题已经在博客<数据库安装和使用过程中出现的一些问题>给出了相应的解决办 ... 
- 20175317 《Java程序设计》第九周学习总结
		20175317 <Java程序设计>第九周学习总结 学前准备 首先下载XAMPP,下载完成后打开: 将前两个选项打开 在IDEA中配置驱动mysql-connector-java-5.1 ... 
随机推荐
- 解决Nuget:https://api.nuget.org/v3/index.json 访问不了的问题
			最近在家中用使用VS编译项目时,Nuget包一直下载不了,直接在浏览器中访问https://api.nuget.org/v3/index.json ,浏览器也打不开网址.把https协议改成http协 ... 
- 【javascript】函数中的this详解 — 大家准备好瓜子,我要讲故事啦~~
			javascript中的this和函数息息相关,所以今天,我就给大家详细地讲述一番:javascript函数中的this 一谈到this,很多让人晕晕乎乎的抽象概念就跑出来了,这里我就只说最 ... 
- 【性能测试工具】- Siege
			优点:比http_load好用,因为相同的url.txt文件在httpload不好使,所以在易用性上httpload不如siege,仍需进一步调研. 缺点:安装过程中,不能自动创建siege.log文 ... 
- Linux - 简明Shell编程09 - 重定向(Redirection)
			脚本地址 https://github.com/anliven/L-Shell/tree/master/Shell-Basics 示例脚本及注释 #!/bin/bash pwd > 1.log ... 
- Linux - 简明Shell编程13 - 用户输入(UserInput)
			脚本地址 https://github.com/anliven/L-Shell/tree/master/Shell-Basics 示例脚本及注释 1 - arguments #!/bin/bash i ... 
- mysql metadata lock
			想必玩过mysql的人对Waiting for table metadata lock肯定不会陌生,一般都是进行alter操作时被堵住了,导致了我们在show processlist 时,看到线程的状 ... 
- MySQL锁与MVCC
			--MySQL锁与MVCC --------------------2014/06/29 myisam表锁比较简单,这里主要讨论一下innodb的锁相关问题. innodb相比oracle锁机制简单许 ... 
- thymeleaf模板引擎入门
			ThymeLeaf是什么 Thymeleaf是一个用于服务器端的java模板引擎,它使用简单但功能强大,目前可以处理的模板类型包括:HTML.XML.TEXT.JavaScript.CSS等. 搭建t ... 
- TestNG--入门介绍教程
			阅读目录 TestNG介绍 在Eclipse中在线安装TestNG 在Eclipse中离线安装Testng TestNG最简单的测试 TestNG的基本注释 TestNG中如何执行测试 使用testt ... 
- ASP.NET Core 运行原理解剖[2]:Hosting补充之配置介绍
			在上一章中,我们介绍了 ASP.NET Core 的启动过程,主要是对 WebHost 源码的探索.而本文则是对上文的一个补充,更加偏向于实战,详细的介绍一下我们在实际开发中需要对 Hosting 做 ... 
