问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

如何编此程序 java

发布网友 发布时间:2022-05-31 11:01

我来回答

3个回答

热心网友 时间:2023-10-13 17:24

看明白了,按照A word is defined
as a maximal sequence of consecutive characters that are not white spaces. The static function
boolean Character.isWhitespace(char) returns true if the input character is a white space.
这两句话来说呢,实际上是使用了比较复杂的自定义方法,而抛弃了java一些现有的方法。
package file;

import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;

public class FileContentsCheck {

public static String fileStatistics(String fileName) throws IOException {
// 行的总长度
int totalLineLength = 0;
// 行数
int lineCount = 0;
// 最长行
String[] lines = new String[2];
// 单词总长度
int totalWordLength = 0;
// 单词总数
int wordCount = 0;
// longest word
List<String> longestWordList = new ArrayList<String>();
BufferedReader bReader = new BufferedReader(new FileReader(fileName));
String readLineString;
while ((readLineString = bReader.readLine()) != null) {
// 记录行总长度。
totalLineLength = totalLineLength + readLineString.length();
// 记录行数
lineCount++;

/* 查找最长的两行记录。begin*/
if (lines[0] == null || readLineString.length() > lines[0].length()) {
// 找到一行比已保存的数据长的记录
lines[0] = readLineString;
if (lines[1] == null || lines[1].length() < lines[0].length()) {
// 检查line1与line2的长度,将小的放在第一位
lines[0] = lines[1];
lines[1] = readLineString;
}
}
/* 查找最长的两行记录。end*/

/* 查找最长的单词。begin*/
StringBuffer wordSB = new StringBuffer();
for(int i = 0; i < readLineString.length(); i ++){
char _char = readLineString.charAt(i);
if(Character.isWhitespace(_char)){
// 如果当前字符为空格符,则说明读取完了一个单词,则跟原有的最长单词进行比较。
if(longestWordList.isEmpty() || wordSB.toString().length() > longestWordList.get(0).length()){
// 如果比原有单词长,则替换掉原有单词。
longestWordList.clear();
longestWordList.add(wordSB.toString());
}else if(true){
// 如果和原有最长单词长度相等,则追加到list当中。
longestWordList.add(wordSB.toString());
}
// 如果比原来最长单词长度小,则不进行任何处理。
// 处理完后还原wordSB。
wordSB = new StringBuffer();
}else{
// 如果不是空格符,则继续拼写该单词
wordSB.append(_char);
}
}
/* 查找最长的单词。end*/

}
StringBuffer resultSB = new StringBuffer();
resultSB.append("the average line length is :" + (((float)totalLineLength) / lineCount)).append("\r\n");
resultSB.append("the longest two lines is :").append("\r\n");
resultSB.append(lines[0]).append("\r\n");
resultSB.append(lines[1]).append("\r\n");
resultSB.append("the average word length" + (((float)totalWordLength) / wordCount)).append("\r\n");
resultSB.append("the longest words are : ").append("\r\n");
for(int i = 0; i < longestWordList.size(); i ++){
resultSB.append(" ").append(longestWordList.get(i));
}

return resultSB.toString();
}

public static void main(String[] args) {
try {
System.out.println(FileContentsCheck.fileStatistics("E:/HessNew.java"));
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}

}

热心网友 时间:2023-10-13 17:25

兄弟.......
全英文版的.........
当我是神啊...........

热心网友 时间:2023-10-13 17:25

很难么? 基本输出输入的问题
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
amd锐龙r75700g超频性价比装机方案,要核显性能综合表现超 架空电线故障如何排除 ...unexpected T_CONSTANT_ENCAPSED_STRING in 怎么解决这个错啊_百度... php错误Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_S... PHP出现如下情况 syntax error, unexpected T_ENCAPSED_AND_WHITES... php 如何捕获类似于Parse error: syntax error, unexpected T_CONSTA... 挂烫机如何熨西装 戗驳领西装怎么熨烫 西装前片怎么推拉拔烫 西装能不能拿去烫 新概念英语第二册课本上的习题答案网上哪里找? Tomcat 启动时报错(IO 错误: The Network Adapter could not establish the connection) 什么原因? 如何用matlab语句构造带滞后的一阶惯性系统 微信修改了王者人脸识别qq还能修改吗? 微信给孩子邦上王者荣耀怎么改 未激活的信用卡别人可以激活使用吗? 办的信用卡如果没激活能使用吗? 驾驶证能贷款吗? 支付宝招联好期贷570分不够还可以申请么 茂德公辣椒酱可以如何吃 一个男生主动把自己的给了女生,让女生主动加,代表着什么? 如何含蓄地要一个男生的 请简要介绍一下什么是议程设置 男生有两个,但他只加了你一个小号,突然又用大号加你,是什么意思_百度问一问 议程设置的应用 一个男生是我爱谁全拼那为啥还跟我聊? 男人用yzj1314m这个啥意思? 男人用19961213代表是什么意思? 议程设置功能的定义 如何含蓄地要一个男生的? 怎么设置参数使得可以重定向由CreateProcess生成的进程的标准IO 板块漂移理论 Could not parse mapping document from input stream #include &lt;stdio.h&gt; ,#include &lt;math.h&gt;疑惑 S3C44BOX的启动代码 com.caucho.hessian.io.HessianProtocolException: &#39;?&#39; is an unknown code machine.h头文件是什么文件 它的作用是什么 在本地可以办理外地的手机号码吗 《单词不用记》怎么样? 单词不用记好用吗? 单词不用记怎么样! 三出水手持花洒怎么用爱华的。 单词不用记怎么样? 英语单词不用记这本书有用吗 三出水花洒有几个开关 请问大侠们 张杰《英语单词不用记》好用吗? 《单词不用记》效果怎么样 谁买了“单词不用记”这套教材的,谈谈看法! 张杰英语单词不用记怎样背单 单词不用记这个教学方法怎么样!