gpt4 book ai didi

Java泛型多次持有相同类型的参数

转载 作者:可可西里 更新时间:2023-11-01 16:22:29 26 4
gpt4 key购买 nike

我正在学习 hadoop map-reduce 算法,我是 java 泛型概念的新手,我能够理解泛型可以为使用引用类型创建的对象做什么(类型转换)。但无法理解为什么相同的参数类型在<>大括号内被多次声明。

下面是一个 reducer 类定义,它实现了 Reducer 接口(interface),类型声明为 。为什么不能像 那样单独使用?

public static class T_Reduce extends MapReduceBase implements 
Reducer< Text, IntWritable, Text, IntWritable >
{

public void reduce( Text key, Iterator <IntWritable> values, OutputCollector<Text, IntWritable> output, Reporter reporter) throws IOException
{
......
......
}
}

我用谷歌搜索了很多,找不到简单的正确答案。

最佳答案

Reducer 的 JavaDoc完全指定类型的签名,如

org.apache.hadoop.mapreduce
Class Reducer<KEYIN,VALUEIN,KEYOUT,VALUEOUT>

表示前两个参数是reduce函数输入的键和值类型——而第二对是输出类型。在这里它们是相同的,但不需要它们适用于所有可能的用例。例如,您可能会根据 int 的计算生成一个 double

关于Java泛型多次持有相同类型的参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43795065/

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