" mean?-6ren"> " mean?-这是java代码中的类定义: public class WordCount { public static class Map extends Mapper { private final -6ren">
gpt4 book ai didi

Java类定义: what does "<>" mean?

转载 作者:行者123 更新时间:2023-12-02 07:34:29 25 4
gpt4 key购买 nike

这是java代码中的类定义:

public class WordCount {

public static class Map extends Mapper<LongWritable, Text, Text, IntWritable> {
private final static IntWritable one = new IntWritable(1);
private Text word = new Text();

public void map(LongWritable key, Text value, Context context) throws IOException, InterruptedException {
String line = value.toString();
StringTokenizer tokenizer = new StringTokenizer(line);
while (tokenizer.hasMoreTokens()) {
word.set(tokenizer.nextToken());
context.write(word, one);
}
}
}

这是什么意思?

public static class Map extends Mapper<LongWritable, Text, Text, IntWritable>

为什么这里需要一个“<>”?

最佳答案

这称为“泛型”。它允许您添加类型参数。

在这种特殊情况下,这意味着 MapMapper对于 (LongWritable,Text,Text,IntWritable) 的元组。

一个更简单的例子:假设你有一个 Set。它可以是一组整数、一组字符串、MyClass 实例......这就是您使用泛型的地方。
通过声明变量的类型为 Set<Integer> ,您指定它是一组整数。如果您只是将其声明为集合,则必须自己检查它是否只包含整数。通过添加类型参数<Integer> ,编译器现在可以进行类型检查。

泛型定义 here在 Java 语言规范中。

关于Java类定义: what does "<>" mean?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12454821/

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