Hadoop - 类型不匹配:无法从List <text>转换为List <string>

时间:2016-12-15 15:49:44

标签: java arrays list hadoop hashset

我想使用以下代码将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>

1 个答案:

答案 0 :(得分:3)

由于Text不是String,因此无法进行直接转换。但是,这可以通过简单的for-each来完成:

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

或使用Java 8流

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