我正在查看“WordCount”,Hadoop 的 hello world 示例,它包含以下方法:
public static class Reduce extends Reducer<Text, IntWritable, Text, IntWritable> {
public void reduce(Text key, Iterable<IntWritable> values, Context context)
throws IOException, InterruptedException {
int sum = 0;
for (IntWritable val : values) {
sum += val.get();
}
context.write(key, new IntWritable(sum));
}
}
我一定是误解了我正在阅读的内容。我将这个称为 Reduce 的泛型类阅读,它扩展了基类 Reducer,并带有一些泛型类型。来自 C# 的签名是不允许的,因为有两个 Text 实例,编译器不知道如何适当地映射参数。
有人可以解释这种不熟悉的语法吗?
编辑:这是泛型的一个示例,但是,在这种形式中,要使用的实际类型已在声明中设置。Reduce 类不是泛型的,但 Reducer 是泛型的,并且我们设置了参数 A、B、C 和 D。