Java第5次实验提纲(集合)
PTA与参考资料
集合预习课件
题集:jmu-Java-06-集合
集合实验文件
第1次实验
1.1 ArrayListIntegerStack(课堂演示)
可演示:jdk中的javadoc文档注释/**
。
javadoc:javadoc技术可以从程序源代码中抽取类、方法、成员等注释形成一个和源代码配套的API帮助文档。
注1:不要导入java.awt.List,应导入java.util.List
注2:提交的时候务必要将中文注释删掉。
思考:是否一定要指定栈中的元素类型?
1.2 银行业务队列简单模拟(课堂演示)
Queue<String> q = new Queue<>();
可以成功吗?为什么?
LinkedList<Integer> queue = new LinkedList<>();
queue.addLast(1);
Queue<String> q = new LinkedList<>();
q.addLast(1); #为什么这句会错误?
请在JDK文档中查询Queue接口,然后看其有什么实现类?使用其中一个实现类完成。
可演示:ctrl+shift+o 快速导入所需包, ctrl+2
。
思考:可以直接使用LinkedList<String> queue = new LinkedQueue<>();
直接代替队列使用吗?
1.3 统计一段英文文字中的不同单词的个数并按单词的字母顺序排序后输出(课堂演示)
采用什么List、Set、Queue还是Map?
如何按字母顺序排序?
逐个读取单词,见Scanner的hasNext()与next()方法
如何遍历?forEach, iterator
快速测试技巧:
String str = "将PTA中的输入样例直接粘贴到Eclipse的双引号之间,并删掉多余的字符";
//Scanner sc = new Scanner(System.in); //然后把System.in改成str,如下所示
Scanner sc = new Scanner(str); //Scanner可直接对字符串处理
//其他代码
接下来测试的时候,就直接运行。无需在控制台手动粘贴输入样例。
注意:在PTA提交的时候。需要将Scanner(str)改成Scanner(System.in)。
1.4 尝试使用Java集合类中的LinkedList代替栈,来判断一个字符串是否是回文
- 简单讲解:使用栈判断回文的原理。
- 简单讲解:使用LinkedList中的哪两个方法来代替入栈与出栈。
第2次实验
2.1 6-1 List中指定元素的删除
读取单词到List:Scanner lineScanner = new Scanner(line)
,然后使用lineScanner的next方法。可以忽略词与词之间空格、多个空格。
从头到尾删要注意什么?
2.2 7-3 统计文字中的单词数量并按出现次数排序(课堂演示)
- Map的Key, Value分别应该是什么类型?
- 怎么判断Map中的的keySet中是否存在某个单词?如果单词不存在,怎么放入Map?
- 怎么对value进行排序?
Collections
仅能对List进行排序,怎么将EntrySet转化为List (List有一个构造函数,可以接收Set)?如何对List进行排序? - 在IDE中如何快速生成匿名内部类(如Comparator)?
alt+/
2.3 7-4 倒排索引(自行完成)
2.4 7-5 GeneralStack(自行完成)
简单讲解:泛型接口、泛型类的意义。
2.5 本章特别加分任务
实验任务书中的“倒排索引”、“逆向最大匹配分词算法”。
请为你的程序编写若干方法,比如:对于“倒排索引”题目,
请至少编写如下几个方法:
- 建立索引 createIndex
- 打印索引 printIndex
- 检索 queryIndex
对于“逆向最大匹配分词算法”,请至少编写:
- List split(String line, Set words) //对lines使用词表words进行分词
编写好以后,请直接给老师演示并讲解清楚。
参考资料:
参考链接
Java第5次实验提纲(集合)的更多相关文章
- Java第06次实验提纲(集合)
PTA与参考资料 重要参考-集合简述 题集:jmu-Java-06-集合 集合实验文件 第1次实验 1.1 ArrayListIntegerStack(课堂演示) 可演示:jdk中的javadoc文档 ...
- Java第5次实验提纲(Java图形界面编程)
1. Swing与NetBeans 使用NetBeans编写简单界面.见GUI实验参考文件中的0.第06次实验(图形程序设计.事件处理与Swing).doc 题目1: Swing用户界面组件与事件处理 ...
- Java第05次实验提纲(Java图形界面编程)
1. Swing与NetBeans 使用NetBeans编写简单界面.见GUI实验参考文件中的0.第06次实验(图形程序设计.事件处理与Swing).doc 题目1: Swing用户界面组件与事件处理 ...
- Java第6次实验提纲(异常)
PTA与参考资料 题集:集合 异常实验文件 第1次实验 1.1 7-1 常用异常 如何进行强制转换 如何捕获多种类型的异常 1.2 7-2 使用异常机制处理异常输入 在哪里加catch 1.3 7-3 ...
- Java第07次实验提纲(异常)
PTA与参考资料 题集:集合 异常实验文件 第1次实验 1.1 7-1 常用异常 如何进行强制转换.父类型转化为子类型常见错误. 如何捕获多种类型的异常 简要输出异常信息,System.out.pri ...
- Java第2次实验提纲(Java基本语法与类库)
1. 使用Git克隆(clone)项目到你的Eclipse项目中 见以下参考资料中的3 从码云将项目clone到你的电脑 重要提示: 使用Git来管理你的代码以后,当你在本机Eclipse项目中开始编 ...
- Java第02次实验提纲(Java基本语法与类库)
1. 熟悉Git 1.1 学会使用网页版的操作代码仓库(gitee) 申请账号,然后根据老师提供的链接或者二维码加入团队,然后修改昵称. fork老师提供的代码库项目,新建自己学号命名的文件并上传一些 ...
- Java第1次实验提纲(基本概念与引入PTA+Git)
0. 控制台下编译.运行 在Notepad++编写Java程序 学会使用控制台,javac.java 学会使用Notepad++ 参考资料: 控制台-cmd应用基础 扫盲教程 使用命令行编译并运行ja ...
- Java第7次实验提纲(多线程)
PTA与参考资料 题集:多线程 多线程实验参考文件 ThreadReading 实验-基础部分 1.1 基础题目MyThread类.自行完成题集合的:PrintTask 1.2 Runnable与匿名 ...
随机推荐
- vue中的vue-cli
在前面的学习过程中我相信你们已经对vue有了一定的了解,现在我们来看一下vue中的vue-cli. 学习这个我们首先需要的是node环境的,如果你的网络环境慢的话建议安装淘宝镜像,在cmd中输入 np ...
- POJ-1251 Jungle Roads---MST裸题(需要编号)
题目链接: https://vjudge.net/problem/POJ-1251 题目大意: 首先给你一个图,需要你求出最小生成树,输入N个节点,用大写字母表示了节点,然后节点与节点之间有权值. 思 ...
- AtomicInteger类的理解及使用
AtomicInteger在多线程并发场景的使用 AtomicInteger提供原子操作来进行Integer的使用,因此十分适合高并发情况下的使用. AtomicInteger位于包package j ...
- 使用生成器把Kafka写入速度提高1000倍
title: 使用生成器把Kafka写入速度提高1000倍 toc: true comment: true date: 2018-04-13 21:35:09 tags: ['Python', '经验 ...
- Centos下安装 .net Core运行程序
首先要进行更新下镜像文件 sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc sudo sh -c 'echo -e ...
- vue-cli的使用
1.安装node https://nodejs.org/en/download/ 2.webpack安装[我选全局安装] 全局安装 npm install --global webpack 本地安装 ...
- How to preview html file in our browser at sublime text?
sublime preview html.md open In Browser what should we do if we want to preview html file in our bro ...
- js 的作用域 域解析 分析
作用域链 函数每次执行时,浏览器都会在函数中开启一个地方用来存储函数内的局部数据.(声明在函数内的局部变量),这个地方就叫做作用域([scopes]) 作用域链 变量与函数的查找规则:当我们在 ...
- scrapy下载图片到自己的目录,创建缩略图,存储入库
环境和工具:python2.7,scrapy 实验网站:http://www.27270.com/tag/333.html 爬去所有兔女郎图片,下面的推荐需要过滤 逻辑:分析网站信息,下载图片和入库 ...
- Tensorflow学习笔记(对MNIST经典例程的)的代码注释与理解
1 #coding:utf-8 # 日期 2017年9月4日 环境 Python 3.5 TensorFlow 1.3 win10开发环境. import tensorflow as tf from ...