gpt4 book ai didi

Java:将参数传递给有界参数函数

转载 作者:行者123 更新时间:2023-12-02 09:41:18 24 4
gpt4 key购买 nike

在 Java 中,我正在开发一个返回数组中最高值的函数。我编写它时,它不关心使用有界参数的参数类型(我认为)。我在检测函数签名时在主函数中遇到错误。

我按照我在各个教程页面中看到的内容进行操作,这些页面似乎并未表明调用会出现任何问题。

public static <N extends Number> N getMax (N [] numberArray){
N value = numberArray [0];
for (int i = 0; i < numberArray.length; i++){
if((double) numberArray[i] > (double) value)
value = numberArray[i];
}
return value;
}
public static void main (String [] args ){
double[] array = {1,2,3,1,-10,2};
System.out.println(getMax(array));
}

编辑:对这个问题进行一些澄清。我这样做是作为作业的一部分,其中我需要编写一个返回数组最大值的函数。基于此,我假设我不能期望任何特定的输入,并且主要功能只是演示该问题。

最佳答案

您指定了一个原始数组 (double[]),在将其传递给 getMax 时无法将其推断为 Number[] 。一个简单的解决方案是使用 Double[] 代替,因为 Double 扩展了 Number:

public static void main (String[] args) {
Double[] array = {1D, 2D, 3D, 1D, -10D, 2D};
System.out.println(getMax(array));
}

输出:

3.0

关于Java:将参数传递给有界参数函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57048063/

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