Class__Two
今天老师要求做查找英文文章中最高频的词 文章用文本储存
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStreamReader;
private final int MAX = 1000;
private String[] st;
private String s; //用来转换StringBuilder类型
private words[] a = new words[MAX]; //声明一个类数组
private StringBuilder str=new StringBuilder(); //为了储存从文本中导出的字符串
/*
* 文件内容的导出
*/
public void output_1() throws IOException
{
File a=new File("information.txt");
FileInputStream b = new FileInputStream(a);
InputStreamReader c=new InputStreamReader(b,"UTF-8");
{
BufferedReader bufr =new BufferedReader(c);
String line = null;
while((line = bufr.readLine())!=null){
st=line.split("[ ,?!.'\"\t]"); //字符串变成字符串数组,设置多个分割符
for(int i=0;i<st.length;i++)
str.append(st[i]+" "); //将字符串添加到str类中
}
bufr.close();
}
c.close();
b.close();
s=""+str; //将str转换成String类
st=s.split(" "); //将s转换成字符串数组
}
/*
* 用来比较字符串数组中哪个单词出现的频率多
*/
public String Competive() throws IOException {
String Max;
output_1();
int m=1;
int max=0;
a[0]=new words(); //每次调用声明的a类数组都必须给它开辟一个空间
a[0].Words=st[0];
a[0].Number = 1;
for(int i=1;i<st.length;i++) {
boolean flag = true;
for(int j=0;j<m;j++) {
if(a[j].Words.equals(st[i])) { //如果字符串相同则它们出现的次数加一
a[j].Number++;
flag = false;
break;
}
}
if(flag) { //将不同的字符串传入
m++;
a[m-1]=new words();
while(st[i].equals(" "))
i++;
a[m-1].Words=st[i];
a[m-1].Number = 1;
}
}
for(int n=1;n<m;n++) { //比较得出出现的次数最多的那个单词
if(a[max].Number<a[n].Number)
max=n;
}
Max = a[max].Words;
return Max;
}
public static void main(String[] args) throws IOException {
Mananger con = new Mananger(); //声明一个Mananger对象用来调用Competive函数
System.out.println("出现最多的单词是:"+con.Competive());
}
}
Class__Two的更多相关文章
随机推荐
- (4.28)for xml path 在合并拆分上的作用演示
for xml path 用于合并与拆分 1.合并 很多时候需要在SQL Server中创建逗号分隔列表.这可以使用SQL Server的DOR XML PATH功能完成.与select语句一起使用时 ...
- 如何代码隐藏email而用户又能看到
我们有时在网站上留一个邮箱,然后漫天垃圾邮件,非常苦恼,这是因为爬虫通过代码匹配收集网页上的邮箱,那么有没办法代码隐藏email而用户又能看到呢?其实不会很难,如果你的网站是用wordpress搭建, ...
- WordPress如何屏蔽恶意关键词搜索
我们在用WordPress建站比较方便,但如果网站有一定的权重后,一些不怀好意的人就会过来制作恶意内容,比如故意搜索邪恶的关键词.垃圾评论等,那我们如何屏蔽恶意搜索关键词呢?不会很难,会写点代码的朋友 ...
- JDK源代码学习系列04----ArrayList
JDK源代码学习系列04----ArrayList 1 ...
- SQLite数据库管理工具(SQLiteStudio)v3.1.1
http://www.pc6.com/softview/SoftView_86552.html
- [py][mx]django的cookie和session操作-7天免登录
浏览器同源策略(same-origin policy) csrf攻击防御核心点总结 django的cookie和session操作-7天免登录 flask操作cookie&django的see ...
- Python 正在表达式
什么是正则表达式 正则表达式:是一组特殊的字符序列,又称为规则表达式,它能方便你检查一个字符串是否与某种模式匹配.通常用来检索和替换那些符合某些模式的文本.python中的re模块,实现了全部的正则表 ...
- 【Java】-NO.16.EBook.4.Java.1.003-【疯狂Java讲义第3版 李刚】- oop
1.0.0 Summary Tittle:[Java]-NO.16.EBook.4.Java.1.003-[疯狂Java讲义第3版 李刚]- oop Style:EBook Series:Java S ...
- PHP学习路径及练手项目合集
PHP 技术路径中包含入门知识.PHP 编程基础.PHP Web 框架.项目实战和项目进阶五个模块.模块中的课程将带着你逐步深入,学会如何使用 PHP 实现项目一个博客,聊天室,MVC框架及搜索系统等 ...
- .Net Core资源
官网:https://dotnet.github.io/ 1.开发环境 vs2015安装: .net core sdk : https://download.microsoft.com/downloa ...