java - java.util.NoSuchElementException 即使 hasMOreTokens 包括在内
问题描述
我正在使用 map 和 reduce 打印一对以空格分隔的单词并像这样删除它们的标点符号。它工作了一会儿,现在给了我没有 elementEsception 的错误。难道我做错了什么?
String line = value.toString();
String delim = " ";
boolean returnDelims = false;
StringTokenizer tokenizer = new StringTokenizer(line, delim, returnDelims );//separa el string line en tokens
String prevToken = tokenizer.nextToken();
while (tokenizer.hasMoreTokens()) {
String currToken = tokenizer.nextToken();
String CurrentPrint = prevToken + " " + currToken.replace(",", "").replace(".", "");
if(!prevToken.contains(",")&&!prevToken.contains("."))
...//打印当前打印 }
错误出现在使用 hasMoreTokens 的第一行:对不起,我无法在 cloudera 终端中复制。但是,是的,它曾经奏效过一次。
解决方案
如果您的“行”为空字符串 (line=""),则可能会发生这种情况。
推荐阅读
- wpf - 任务状态区域中的多个 NotifyIcon 图像
- xcode - pod安装firebase后xcode中的错误
- angular - ASP.NET Core 2.1 Angular 6.0 SPA 模板 - 用于索引而不是静态页面的剃须刀页面 (cshtml)
- docusignapi - Docusign 开发人员 webhook 不允许 http
- reactjs - 处理所有反应组件的 componentDidCatch
- vba - 使用具有精确数据格式的 VBA 从 Web 将 CSV 文件导入到 Excel 工作表
- android - Toast 正在更改仅纵向应用程序的方向
- c - sizeof(),C 结构中的对齐方式:
- react-native - React Native - Fetch 不是一个函数。获取未定义
- javascript - java中解密方法的不同行为