使用StreamTokenizer

时间:2018-09-27 20:39:52

标签: java hashmap tokenize

我能够搜索文件并查找由空格分隔的单词和数字。我的问题是它不会存储或标记非单词/数字字符,例如“ <”或“ /”。它将仅将它们打印为null并假装存储它们。我怎样才能解决这个问题?我将在下面列出我的代码和结果。

while(sT.nextToken() != StreamTokenizer.TT_EOF) {
            if (sT.ttype == StreamTokenizer.TT_NUMBER) {
                hashMap.put(String.valueOf(sT.nval), sT);
                System.out.println(Arrays.asList(hashMap));
            } else {
                hashMap.put(sT.sval, sT);
                System.out.println(Arrays.asList(hashMap));
                System.out.println(sT.sval);
            }
        }

[{null = Token ['='],第1行}] 空值 [{null = Token ['='],第1行}] 空值 [{null = Token [THIS],第1行,THIS = Token [THIS],第1行}] 这个 [{null = Token [IS],第1行,THIS = Token [IS],第1行,I​​S = Token [IS],第1行}] 是 [{null = Token [THE],第1行,THE = Token [THE],第1行,THIS = Token [THE],第1行,I​​S = Token [THE],第1行}]

我也不确定为什么它在哈希图中说了四次令牌。这应该发生吗?

0 个答案:

没有答案