第一次就记录给java的第五次作业吧

阅读: 评论:0

第一次就记录给java的第五次作业吧

第一次就记录给java的第五次作业吧

内容:使用scanner类和正则表达式统计一篇英文中的单词,要求如下:
–一共出现了多少个单词
–有多少个互不相同的单词
–按单词出现频率大小输出单词
•考核知识点:面向对象+输入输出


当时我是很懵逼的啊,前面两个还好做,最后一个是什么鬼啊!!!! 后来经过别人提醒之后,觉得要用HashMap。
先理清一下基本思路。 1.建立一个类,装一切需要的东西和方法。 2.利用Scanner.useDelimeter(),使用正则表达式把非单词过滤掉(有‘的两个单词合并在一起视为一个单词),储存在一个字符串数组里,储存的同时进行计数,得到装有所有单词的字符串数组和总单词数。第一个任务就解决了。 3.第二个任务…………一开始思路错了,后来想到这个方法,尽管这个方法有点麻烦。 创立一个新的字符串数组,不重复地装所有的单词。从所有单词里拿一个,然后下一个和这个不重复的数组的所有字符串对比,如果不重复就加进去。记得同时进行计数。 这样我们就能得到一个去重复的字符串数组,和这个字符串数组的单词个数,这个个数就是第二个要求所要的东西。 4.第三个要求。先创建一个整数数组,和不重复的单词数组一一对应,装的是单词出现的次数。 至于怎么得到这个次数,用比较脑残的思路就是,让不重复数组的每个单词都和所有单词的成员一个个进行对比,有一样的就+1。
我一开始想到用HashMap,后来发现HashMap不能用基本数据类型!于是我又得转化成Integer的封装类,不仅如此,HashMap里面相同的Key只能对应一个Value,我去,这怎么办,根本用不了啊!
但是后来我想了想,不是傻吗,根本不用HashMap,本来不重复的单词数组和整数数组就是一一对应的关系啊! 意识到这一点之后就简单了。
下面是详细代码。
CalWords.java
package examples;
import java.util.*;

/**
 * Created by Kazami Hatsuroku on

本文发布于:2024-01-30 13:40:52,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/170659325620391.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:作业   第五次   java
留言与评论(共有 0 条评论)
   
验证码:

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23