1. 本周学习总结

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

1.2 选做:收集你认为有用的代码片段

  1. 书面作业

1.本次作业题集集合

List中指定元素的删除(题目4-1)

1.1 实验总结

在这一道题中,我开始是从第一个元素开始删除,但是总是没有办法实现:

for(int i=0;i<strlist.size();i++){
if(strlist.get(i)=="1"){
strlist.remove(i);
}

或者是这样:

for(int i=0;i<list.size();i++)
{
if(list.get(i).equals(str))
{
list.remove(i);
i--;
}
}

最后看了别的同学的思路,就从最后一个元素开始,发现可以实现了:

  for (int i = list.size()-1;  i >=0; i--) {//从最后一个元素开始删除
if(list.get(i).equals(str)){//比较元素
list.remove(i);//删除
}

但是我还是不太满意,想用迭代器试一下来着,然而没有成功。

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

2.1 伪代码(简单写出大体步骤)

1.创建一个Map;
2.将所有的元素读入Map中;
3.使用number和Word分别来记录元素总数和每个元素出现的次数;
4.遍历所有的元素,同时排序;
5.输出number和前十的Word。

2.2 实验总结

对Map不熟悉,不太会用,只知道要用,但不知道要怎么写,比如健值。总之没有写出来,在努力。

3.倒排索引(题目5-4)

3.1 截图你的提交结果(出现学号)

未提交

3.2 伪代码(简单写出大体步骤)

3.3 实验总结

4.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中调用,然后输出结果。

 List<Student> stulist = new ArrayList<Student>();
List.add(new Student( 6, "Li", 20, Gender.女, true));
List.add(new Student( 11, "Han", 21, Gender.男, true));
List.add(new Student( 12, "Zhao", 18, Gender.男, false));
List.add(new Student( 8, "Xu", 21, Gender.男, true));

4.2 使用java8中的stream(), filter(), collect()编写功能同4.1的函数,并测试

4.3 构建测试集合的时候,除了正常的Student对象,再往集合中添加一些null,然后重新改写4.2,使其不出现异常。

5.泛型类:GeneralStack(题目5-5)

5.1 截图你的提交结果(出现学号)

未提交

5.2 GeneralStack接口的代码

interface GeneralStack<T> {
T push(T item);
T pop();
T peek();
public boolean empty();
public int size();
}
最主要的就是定义类时,不必直接就决定类的类型,在main中调用时,可以创建多个不同类型的类,方便;同时消除代码中的很多强制转换,减少出错,安全性提高。

6.泛型方法

基础参考文件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。注意:该方法声明未写全,请自行补全。

7.选做:逆向最大匹配分词算法

集合实验文件中的第07次实验(集合).doc文件,里面的题目6.

7.1 写出伪代码

7.2 实验总结

8.选做:JavaFX入门

完成其中的作业1、作业2。内有代码,可在其上进行适当的改造。建议按照里面的教程,从头到尾自己搭建。

  1. 码云上代码提交记录及PTA实验总结

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

3.1. 码云代码提交记录

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

3.2. PTA实验

函数(4-1),编程(5-3,5-4,5-5)

实验总结已经在作业中体现,不用写。

201521123012 《Java程序设计》第八周学习总结的更多相关文章

  1. 201521123027 <java程序设计>第八周学习总结

    1.本周学习总结 1.1思维导图 2.书面作业 Q1.List中指定元素的删除(题目4-1) 1.1 实验总结 总结:判断List中是否存在指定元素,需要用到equals方法,若存在就用remove进 ...

  2. 201571030332 扎西平措 《面向对象程序设计Java》第八周学习总结

    <面向对象程序设计Java>第八周学习总结   项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在哪里 https: ...

  3. 201871010106-丁宣元 《面向对象程序设计(java)》第八周学习总结

    201871010106-丁宣元 <面向对象程序设计(java)>第八周学习总结 正文开头: 项目 内容 这个作业属于哪个课程 https://home.cnblogs.com/u/nwn ...

  4. 20145213《Java程序设计》第九周学习总结

    20145213<Java程序设计>第九周学习总结 教材学习总结 "五一"假期过得太快,就像龙卷风.没有一点点防备,就与Java博客撞个满怀.在这个普天同庆的节日里,根 ...

  5. 21045308刘昊阳 《Java程序设计》第九周学习总结

    21045308刘昊阳 <Java程序设计>第九周学习总结 教材学习内容总结 第16章 整合数据库 16.1 JDBC入门 16.1.1 JDBC简介 数据库本身是个独立运行的应用程序 撰 ...

  6. 20145236 《Java程序设计》第九周学习总结

    20145236 <Java程序设计>第九周学习总结 教材学习内容总结 第十六章 整合数据库 JDBC简介 1.JDBC是java联机数据库的标准规范.它定义了一组标准类与接口,标准API ...

  7. 20155303 2016-2017-2 《Java程序设计》第二周学习总结

    20155303 2016-2017-2 <Java程序设计>第二周学习总结 教材学习内容总结 『注意』 "//"为单行批注符: "/*"与&quo ...

  8. 20145237 《Java程序设计》第九周学习总结

    20145237 <Java程序设计>第九周学习总结 教材学习内容总结 第十六章 整合数据库 JDBC入门 ·数据库本身是个独立运行的应用程序 ·撰写应用程序是利用通信协议对数据库进行指令 ...

  9. 20175209 《Java程序设计》第九周学习总结

    20175209 <Java程序设计>第九周学习总结 一.教材知识点总结 有关数据库下载中存在可能出现的问题已经在博客<数据库安装和使用过程中出现的一些问题>给出了相应的解决办 ...

  10. 20175317 《Java程序设计》第九周学习总结

    20175317 <Java程序设计>第九周学习总结 学前准备 首先下载XAMPP,下载完成后打开: 将前两个选项打开 在IDEA中配置驱动mysql-connector-java-5.1 ...

随机推荐

  1. connect by prior 递归算法

    http://blog.163.com/xxciof/blog/static/7978132720095193113752/ oracle中 connect by prior 递归算法 Oracle中 ...

  2. Oracle进程与系统进程

    --Oracle进程与系统进程 --------------------------2013/11/25 这里讨论Linux/Unix环境下,oracle v$process与操作系统对应的关系. 系 ...

  3. 统计s="hello alex alex hello haiyan cc haiyan com"中每个单词的个数

    这个题可以有好几种解题方法. 一.索引值获取 s="hello alex alex hello haiyan cc haiyan com" l=s.split() dic={} f ...

  4. phpexcel导入excel处理大数据

    先下载对应phpExcel 的包就行了https://github.com/PHPOffice/PHPExcel下载完成 把那个Classes 这个文件夹里面的 文件跟文件夹拿出来就好了.直接写到PH ...

  5. Maven详解(一)------ Maven概述

    1.引言 你能搜到这个教程,说明你对 Maven 感兴趣,但是又不是太理解.那么接下来这个系列的教程将会详细讲解 Maven 的用法,相信你看完之后,一定能对 Maven 的理解更进一步! 2.常规项 ...

  6. java项目编码格式转换(如GBK转UTF-8)

    昨天突然下了个Java项目,把项目导入到eclipse中,发现项目是gbk编码格式想把项目变为utf-8,但是发现转换格式比较麻烦就写了这个代码,后面改进了下,想到说不定有人也需要就把它写了出来 代码 ...

  7. Centos 开机后,登录时无法输入密码怎么解决

    Centos 开机无法输入密码怎么解决... ========================= Q:centos启动后,输入登入账号,再输密码就输不进去了,打什么字都没有用... A:输入密码是不显 ...

  8. spring boot整合Thymeleaf的那些坑(spring boot 学习笔记之四)

    这里简单记录一下Thymeleaf配置和使用的步骤 1.修改pom文件,添加依赖 <dependency> <groupId>org.springframework.boot& ...

  9. Go 到底有没有引用传参(对比 C++ )

    Go 到底有没有引用传参(对比 C++ ) C++ 中三种参数传递方式 值传递: 最常见的一种传参方式,函数的形参是实参的拷贝,函数中改变形参不会影响到函数外部的形参.一般是函数内部修改参数而又不希望 ...

  10. 2D 和 3D 中的 CSS 轉換 (Preliminary) CSS3中 translate3D详解

    http://www.zhangxinxu.com/wordpress/2012/09/css3-3d-transform-perspective-animate-transition/ http:/ ...