首页 > 解决方案 > 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 终端中复制。但是,是的,它曾经奏效过一次。 在此处输入图像描述

标签: javastringtoken

解决方案


如果您的“行”为空字符串 (line=""),则可能会发生这种情况。


推荐阅读