hadoop-type不匹配:无法从list< text>转换为list< string>

hl0ma9xz  于 2021-05-29  发布在  Hadoop
关注(0)|答案(1)|浏览(466)

我想改变信仰 Text distinctWords[]List<String> 使用此代码:

List<String> asList = Arrays.asList(distinctWords);

但它给出了一个错误

Hadoop - Type mismatch: cannot convert from List<Text> to List<String>.

如何转换 List<Text>List<String> ?

3npbholx

3npbholx1#

因为 Text 不是一个 String ,无法进行直接转换。但是,这可以通过一个简单的for each来实现:

List<String> strings = new ArrayList<> ();
for (Text text : distinctWords) {
    strings.add(text.toString());
}

或使用Java8流

List<String> strings = Arrays.stream(distinctWords)
    .map(word -> word.toString())
    .collect(Collectors.toList());

相关问题