Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.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_Loops_For Loop_Multidimensional Array - Fatal编程技术网

在Java中,如何在二维数组中分别获取数字?

在Java中,如何在二维数组中分别获取数字?,java,arrays,loops,for-loop,multidimensional-array,Java,Arrays,Loops,For Loop,Multidimensional Array,问题是: (g) 鉴于以下声明: int [][]hours = new int[3][2]; 其中存储了三名员工的周末(周五和周六)工作时间(假设没有部分工作时间) 编写一段Java代码以: 计算并打印所有员工的总工时 每个员工的平均工作时间 假设数组中已填充了数据 我完全迷路了这就是我能猜到的: int [][] hours = new int[3][2]; for (int i = 0; i++; i < hours[0].length){ int totalHour

问题是:

(g) 鉴于以下声明:

int [][]hours = new int[3][2];
其中存储了三名员工的周末(周五和周六)工作时间(假设没有部分工作时间)

编写一段Java代码以:

  • 计算并打印所有员工的总工时

  • 每个员工的平均工作时间

  • 假设数组中已填充了数据

    我完全迷路了这就是我能猜到的:

    int [][] hours = new int[3][2];
    
    for (int i = 0; i++; i < hours[0].length){
        int totalHours;
        for(int j = 0 j++; j < hours[1].length){
            totalHours = totalHours + hours[i][j];
            System.out.println("The total hours employee " + j + "worked is " + totalHours + ".");
        }
        totalHours = 0;
    }
    
    int[][]小时=新的int[3][2];
    对于(int i=0;i++;i
    考虑到这是一个家庭作业问题,我将尝试引导您进入正确的轨道。

    首先,您没有正确访问2d阵列。

    下面是一个如何访问二维数组中每个元素的示例。

    int[][]小时=新的int[3][2];
    for(int i=0;i
    首先,您的
    for
    循环不正确。for循环应该这样写

    for(init variable; condition; increment)
    
    for (int i = 0; i < hours[0].length; i++)
    
    i < hours.length
    
    所以for循环应该是这样的

    for(init variable; condition; increment)
    
    for (int i = 0; i < hours[0].length; i++)
    
    i < hours.length
    
    for(int i=0;i
    至于您的条件,使用嵌套for循环遍历二维数组的方式是,外部循环将沿着行向下移动。因此,你的第一个条件应该是这样的

    for(init variable; condition; increment)
    
    for (int i = 0; i < hours[0].length; i++)
    
    i < hours.length
    
    i
    然后,内部循环基于当前行,或者外部循环中i的值。所以你的内循环条件应该是

    j < hours[i].length
    
    j
    问题在于for循环。以下是更正后的代码:

    int[][] hours = new int[3][2];
    
    for(int i=0; i<hours.length; i++){
        int totalHours = 0;
        for(int j =0; j< hours[i].length; j++){
            totalHours = totalHours + hours[i][j];
        }
        System.out.println("The total hours employee " + i + " worked is " + totalHours +".");
    }
    
    int[][]小时=新的int[3][2];
    
    for(int i=0;ii在第一个
    for
    循环中,它应该是
    i
    ,以获取数组中的行数。
    i
    获取数组中的列数。“这是个问题:…”。我在帖子中找不到任何问题。这在语法上也是不正确的。这是一个过去的考题。我因为几个小时的学习而半死不活,这就是为什么它比我希望的要混乱得多。我今天有一个考试,我的讲座喜欢对考试含糊不清,所以我试图确保我知道如何做过去的每一个考题。不过谢谢你的帮助:)