gpt4 book ai didi

java - 如何在 Java 中创建无类型/通用参数?

转载 作者:行者123 更新时间:2023-12-02 06:24:21 25 4
gpt4 key购买 nike

假设我有 2 种方法:一种添加两个 int,另一种添加两个 long。将参数传递给函数的位置。

我如何制作一种方法来概括参数和返回值来执行此操作?

最佳答案

我在 GWT 中看到了这样的技巧:

public static <T> T add(long a, long b)
{
return (T)(Object)(a + b);
}

像这样使用它:

long answer = add(1L, 2L);
int answer2 = add(1, 2);

虽然这可以满足您的要求,但这种方法的缺点是它会让您面临错误的类型转换。即使您不必显式转换返回的值,您仍然有效地告诉代码执行转换为任何预期类型。你可能会不小心说出类似的话:

String t = add(1, 2);

这会导致运行时异常。然而,如果您有一个方法,其返回值总是在返回后立即转换,这个技巧可以为消费者省去显式转换值的麻烦。

关于java - 如何在 Java 中创建无类型/通用参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3398757/

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