gpt4 book ai didi

hadoop - 如何在 ArrayWritable 中使用 toArray() 方法 - Hadoop

转载 作者:可可西里 更新时间:2023-11-01 15:07:27 25 4
gpt4 key购买 nike

在hadoop的ArrayWritable类中有一个toArray()方法,意思应该是:将这个ArrayWritable转换成一个数组。但它的语法是:

public Object toArray()

那么我们应该如何使用这个功能呢? doc 包上没有关于它的文档。

最佳答案

通常是 ArrayWritable必须适当延长

public class TextArrayWritable extends ArrayWritable {
public TextArrayWritable() {
super(Text.class);
}
}

这是 ArrayWritable 的代码

public ArrayWritable(Class<? extends Writable> valueClass) {
if (valueClass == null) {
throw new IllegalArgumentException("null valueClass");
}
this.valueClass = valueClass;
}

public Object toArray() {
Object result = Array.newInstance(valueClass, values.length);
for (int i = 0; i < values.length; i++) {
Array.set(result, i, values[i]);
}
return result;
}

因此,ArrayWritable#toArray 将返回 java.lang.reflect.Array TextArrayWritable 或相应类的 super(Text.class); 中指定的类型。

关于hadoop - 如何在 ArrayWritable 中使用 toArray() 方法 - Hadoop,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8208504/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com