java—如何在hadoop中获得intwritable的最大范围?

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

有没有办法得到 Intwritable ?
有什么东西和 Int.MAX_VALUE 为了 IntWritable ?

g52tjvyc

g52tjvyc1#

Integer 是基元上的 Package 器 int 使其有资格在java中用作键/值的数据类型 map . 但是 IntWritable 并不真正表示原始数据类型的 Package 器。相反,它是整数的一个变体,具有优化的序列化实现(java默认序列化太庞大)。这么说, Intwritable 不是要取代什么 Integer 用于。即使在Map器中,公共逻辑也是使用 Integer ; 只有当您在 mapredcue 阶段 IntWritable 类型进入图片进行优化。因此,它允许您初始化 IntWritable 从任何地方或核心java库本身获取最大值:

IntWritable writable = new IntWritable(Integer.MAX_VALUE)

这里重要的是它与初始化 Integer ,返回一个不可变的 Integer 对象。 IntWritable 你有一个 set(int value) 方法,并且是可变的。这对于支持精益序列化/反序列化特别重要。

相关问题