无法弄清楚为什么我的CSV文件在添加到trie节点时没有转换为字符串

dzjeubhm  于 2023-06-19  发布在  其他
关注(0)|答案(1)|浏览(106)

在一个基本的csv文件中阅读,第一行,(csv),是“算盘,,,,,,,,,,,,,,,,,”。试着去掉逗号,把这两个词加到某种列表或数组中。当我尝试引用www.example.com(“abacus”)行的第一个单词时,问题就开始trie.search了。

try {
    while ((csv = br.readLine()) != null) {
        String[] words = csv.split(",");
        System.out.println(csv);
        if (words.length == 2) {
            String word = words[0].trim();
            int code = 0;
            trie.insert(word, code);
        }
    }
} catch(FileNotFoundException e) {
    e.printStackTrace();
}
        
System.out.println(trie.search("abacus"));

我尝试在word参数中以几种不同的方式插入单词,但每次都不起作用,除非我键入“abacus”作为参数。

ryhaxcpt

ryhaxcpt1#

在你的代码中,你有下面的 if-conditional

if (words.length == 2)

你的 split 方法调用将返回 9 个元素。
我相信你打算使用的是 ",+",因为你是 split 参数。
split 参数被计算为 * regular expression pattern *。
在这种情况下,加号字符将吸收它前面的一个或多个字符。
例如,下面是使用单个逗号时的数组元素。

0 abacus
1 
2 
3 
4 
5 
6 
7 
8  trust

这里是使用 ",+" 时的元素。

0 abacus
1  trust

相关问题