急!!!求Java高手解释下面三个语句的含义,
Textkey=(Text)_key;output.collect(key,newIntWritable(sum));publicclassReduceextendsMa...
Text key = (Text) _key;
output.collect(key, new IntWritable(sum));
public class Reduce extends MapReduceBase implements Reducer <WritableComparable, Writable, Text, IntWritable> 展开
output.collect(key, new IntWritable(sum));
public class Reduce extends MapReduceBase implements Reducer <WritableComparable, Writable, Text, IntWritable> 展开
3个回答
展开全部
第一句是将_key变量强制转换为Text类型 赋给新声明的Text类型变量 key
第二句是调用output对象的collect方法,该方法有两个参数分别为Text类型和IntWritable类型,
传入Text类型变量key 和 调用构造器新建的new IntWritable(sum)对象,
第三句尖括号中使用的是 泛型 ,泛型是在编写类或接口时用到某些不确定类型的值 使用泛型代替
引用这些使用了泛型的类或接口时,根据实际情况给泛型赋予明确的类型 以保证程序运行的正确性
第二句是调用output对象的collect方法,该方法有两个参数分别为Text类型和IntWritable类型,
传入Text类型变量key 和 调用构造器新建的new IntWritable(sum)对象,
第三句尖括号中使用的是 泛型 ,泛型是在编写类或接口时用到某些不确定类型的值 使用泛型代替
引用这些使用了泛型的类或接口时,根据实际情况给泛型赋予明确的类型 以保证程序运行的正确性
展开全部
Text key = (Text) _key;//这个应该是强制转换
output.collect(key, new IntWritable(sum));///这个真美看明白
public class Reduce extends MapReduceBase implements Reducer <WritableComparable, Writable, Text, IntWritable>//这里定义了一个类,继承MapReduceBase,实现接口Reducer
output.collect(key, new IntWritable(sum));///这个真美看明白
public class Reduce extends MapReduceBase implements Reducer <WritableComparable, Writable, Text, IntWritable>//这里定义了一个类,继承MapReduceBase,实现接口Reducer
追问
<WritableComparable, Writable, Text, IntWritable
为什么要加这四种数据类型呢,有什么意思?
追答
这个不懂了。。。java没学这么深
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
output.collect(key, new IntWritable(sum));
collect方法又两个参数,第二个参数为实现某个接口的实现类
collect方法又两个参数,第二个参数为实现某个接口的实现类
追问
那个,不好意思,你貌似回答错了哦,楼上的说的强制转换哦,其实应该是两个普通的数据吧,能这样转换么?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询