Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/grails/5.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_Sorting_Generics_Multidimensional Array_Comparable - Fatal编程技术网

Java 使用泛型的二维数组中的最大元素

Java 使用泛型的二维数组中的最大元素,java,sorting,generics,multidimensional-array,comparable,Java,Sorting,Generics,Multidimensional Array,Comparable,我已经完成了我所有的代码,我一辈子都搞不明白为什么当我运行它时,max元素是5而不是6。任何帮助都会被感激地接受 public class MaxElement2DimArray { public static void main(String[] args) { Integer[][] numbers = { {1, 2, 3}, {4, 5, 6} }; System.out.println("Max element in array is

我已经完成了我所有的代码,我一辈子都搞不明白为什么当我运行它时,max元素是5而不是6。任何帮助都会被感激地接受

public class MaxElement2DimArray 
{
    public static void main(String[] args) 
    {
        Integer[][] numbers = { {1, 2, 3}, {4, 5, 6} };
        System.out.println("Max element in array is: " +max(numbers));
    }

    public static<E extends Comparable<E>> E max(E[] [] list) 
    {
        E max = list[0][0];
        for (int i=1; i<list.length; i++) 
        {
            for (int j=1; j<list.length; j++) 
            {
                if (max.compareTo(list[i][j]) < 0) 
                {
                    max = list[i][j];
                }
            }
        }
        return max;
    }
}
公共类MaxElement2DimArray
{
公共静态void main(字符串[]args)
{
整数[][]个数={{1,2,3},{4,5,6};
System.out.println(“数组中的最大元素为:”+Max(number));
}
公共静态E最大值(E[][]列表)
{
E max=列表[0][0];

for(int i=1;i您的内部for循环只迭代两次,因为它引用了外部列表的长度。它应该引用内部列表的长度

for (int j=0; j<list[i].length; j++){
    ...
}

for(int j=0;js)你的情况不应该是
计数器是的,就是这样。谢谢你,不知道为什么我没有看到。