1

我有一个 MapReduce Java 程序,它以字符串形式输出一个数字列表作为最终输出。但是编号比较长,占用空间太大。我想将每个数字转换为 Long 并存储。我怎样才能做到这一点?

4

1 回答 1

3

ArrayWritable可以扩展为

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

    public LongArrayWritable(LongWritable[] values) {
        super(LongWritable.class, values);
    }
}

此外,可以将 String 转换为LongWritable

String s = "123456";
new LongWritable((new Long(s)).longValue());
于 2012-10-27T07:45:20.837 回答