Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/326.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
需要帮助在java中查找数组中的最大值吗_Java_Arrays_Methods_Max - Fatal编程技术网

需要帮助在java中查找数组中的最大值吗

需要帮助在java中查找数组中的最大值吗,java,arrays,methods,max,Java,Arrays,Methods,Max,我试图找到一个数组的最大整数,其中number=[10]。我的方法输出0,而不是最大整数 public static void maxArr (int[] number){ int max = number[0]; for(int i = 1; i<number.length; i++){ if(number[i]> max){ max = number[i]; }

我试图找到一个数组的最大整数,其中number=[10]。我的方法输出0,而不是最大整数

public static void maxArr (int[] number){ 
        int max = number[0];
        for(int i = 1; i<number.length; i++){
            if(number[i]> max){
                max = number[i];
            }
        } System.out.print(max);
    }
publicstaticvoidmaxarr(int[]number){
int max=数字[0];
对于(int i=1;i max){
max=数量[i];
}
}系统输出打印(最大值);
}

使用方法时出错。否则看起来不错

int[] array = new int[1]
array[0] = 10
maxArr(array)
是你想做的,它会打印10

int[] array = new int [N];
它将
数组的所有元素初始化为
int
的默认值,即0


因此,最大值为0。

这会将所有元素初始化为0

int N = 10;
int[] array = new int[N]
maxArray(array)
如果你想用10初始化它,你应该

int[] array= {10};
maxArray(array) //This should print 10

试着做一些类似的事情

int[] array = new int[]{10, 9, 8, 7, 6, 5, 4, 3, 2, 1};
maxArray(array);

现在应该打印“10”

您没有正确填充数组

在java中,当您首次使用
private int[]myArray
创建一个数组时,它是空的(也就是说,它还不代表实际的东西,它只是一个可以指向未来数组的名称)。接下来,您可以告诉它将容纳多少元素。有两种常用的方法可以做到这一点:

第一个类似于
myArray=newint[42]这将初始化数组,但每个插槽都将为零(或者更糟的是,如果是对象数组,则为空)。您可以使用
myArray[3]=13
填充其中一个单独的插槽(在本例中为第四个插槽)。这将把int 13存储在myArray的插槽3中。数组插槽从0开始计数,因此如果要调用第一个元素
myArray[0]
,如果要调用第二个元素
myArray[1]
,依此类推。您可以使用for循环仅用几行代码填充整个数组:

for (int i = 0; i < myArray.length; i++) {
    myArray[i] = 10;
}
for(int i=0;i
您的阵列现在可以用于其生命中的任何用途


第二种填充数组的方法发生在初始化数组时。它看起来像
myArray=newint[]{10,42,24,64,8,16,3}
放在花括号中的任何内容现在都在数组中,
myArray[0]
的值现在是10,
myArray[1]
的值现在是42,依此类推。

您能说明如何调用maxArr并输入数组吗?您的方法看起来不错,问题可能在于如何调用它。您是否实际将任何值放入数组中
number=[10]
看起来更像是数组的声明,而不是它的内容……int N=10;int[]数组=新的int[N];maxArr(阵列)@perldog93您的数组具有所有0值!你期待什么?JVM会用随机值来填充它吗?或者你认为这就像C/C++数组初始化一样?@sashkello找到数组的最大整数,其中number=[10],如果所有元素都有相同的值,则不是答案。相反,这就像复制/粘贴另一个实际答案。@LuiggiMendoza只是一个表述错误的问题,它的意思是{10},即一个元素的数组,最大值总是10。如果您想向OP展示如何初始化数组以找到最大值,至少提供一个基本的示例代码,用1到10的值填充数组。让所有的数组值都相等不会有帮助。@LuiggiMendoza-我同意我应该这样做,但我试图用问题中的数据更准确地回答它。哇,非常感谢,这真的让我明白了。我只是在学习数组,非常困惑。