Java:迭代多维数组概念

Java:迭代多维数组概念,java,arrays,multidimensional-array,Java,Arrays,Multidimensional Array,在过去的三年里,我一直在努力学习Java,但我发现我在核心Java方面非常薄弱 我对下面的代码有以下疑问,请帮助我 为什么nums[i][j]=(i+1)*(j+1),(i+1)*(j+1)与+1一起使用 为什么第一个array[]用于初始化for each循环,即(int x[]:nums)的行 代码: //用于二维数组上的每个样式 //代码来源:来自在线站点 公共无效foreachmultiarrya() { int nums[][]=新int[3][5]; //给nums一些值 对于(

在过去的三年里,我一直在努力学习Java,但我发现我在核心Java方面非常薄弱

我对下面的代码有以下疑问,请帮助我

  • 为什么
    nums[i][j]=(i+1)*(j+1)
    (i+1)*(j+1)
    +1
    一起使用
  • 为什么第一个
    array[]
    用于初始化for each循环,即(int x[]:nums)的行
代码:

//用于二维数组上的每个样式
//代码来源:来自在线站点
公共无效foreachmultiarrya()
{
int nums[][]=新int[3][5];
//给nums一些值
对于(int i=0;i
为什么nums[i][j]=(i+1)(j+1);,(i+1)(j+1)与+1一起使用

这完全是任意的,只是为了给二维数组赋值

为什么第一个数组[]用于初始化for each循环,即in line 对于(int x[]:nums)

因为它是一个二维数组,所以要访问所有元素,必须先访问每个子数组,然后访问这些子数组中的元素

why nums[i][j]=(i+1)*(j+1); , (i+1)*(j+1) is used with +1.
为什么nums[i][j]=(i+1)(j+1);,(i+1)(j+1)与+1一起使用

这完全是任意的,只是为了给二维数组赋值

为什么第一个数组[]用于初始化for each循环,即in line 对于(int x[]:nums)

因为它是一个二维数组,所以要访问所有元素,必须先访问每个子数组,然后访问这些子数组中的元素

why nums[i][j]=(i+1)*(j+1); , (i+1)*(j+1) is used with +1.
如果它不与
+1
一起使用,则i为0或j为0的所有位置都将为0。例如,i=2和j=0:如果
+1
不在那里使用,结果将为2*0=0。相反,它将变为3

之所以会出现这种情况,完全原因不是我们在这里可以回答的,而是取决于以后在代码中如何使用二维数组。因为代码所做的只是创建一个二维数组,然后打印它的值,所以需要+1来打印结果

why first array[] is used to intialize the for-each loop i.e in line for(int x[]:nums)..
因为当在二维数组上迭代时,每个位置都是一维数组。然后你必须在一维数组上迭代以打印出每个单个项目(每个
int

例如,考虑棋盘。当你遍历棋盘时,你会遍历列/行。然后,当你有一个列/行时,你必须对它进行迭代以获得棋盘的每个平方。当你完成一个列/行的迭代时,外部迭代进入下一列/行。< /P> 如果它不与

+1
一起使用,则i为0或j为0的所有位置都将为0。例如,i=2和j=0:如果
+1
不在那里使用,结果将为2*0=0。相反,它将变为3

之所以会出现这种情况,完全原因不是我们在这里可以回答的,而是取决于以后在代码中如何使用二维数组。因为代码所做的只是创建一个二维数组,然后打印它的值,所以需要+1来打印结果

why first array[] is used to intialize the for-each loop i.e in line for(int x[]:nums)..
因为当在二维数组上迭代时,每个位置都是一维数组。然后你必须在一维数组上迭代以打印出每个单个项目(每个
int

例如,考虑棋盘。当你遍历棋盘时,你会遍历列/行。然后,当你有一个列/行时,你必须迭代它来获得棋盘的每个平方。当你完成一个列/行的迭代时,外部迭代进入下一列/行。

< P><强> NUS[i] [j]=(i+1)(j+1);,(i+1)(j+1)

它用于将值分配给数组

为什么第一个数组[]用于初始化for each循环,即(int x[]:nums)的行。

它增强了for-loop,所以如果你回到课本,这个for-loop是在JDK5中添加的,它被设计成从开始到结束以严格顺序的方式循环一系列对象,比如数组

用于(int x[]:nums){ }

这里nums是一个二维数组,循环的每次迭代都会检索下一个元素,它是一个数组并存储在x中,这就是为什么需要将x声明为一维数组。 x是一个临时变量,在每次迭代中引用nums中的一个元素,nums的元素是一维数组,因此必须将x的类型声明为数组。

nums[i][j]=(i+1)(j+1);,(i+1)(j+1)

它用于将值分配给数组

为什么第一个数组[]用于初始化for each循环,即(int x[]:nums)的行。

它增强了for-loop,所以如果你回到课本,这个for-loop是在JDK5中添加的,它被设计成从开始到结束以严格顺序的方式循环一系列对象,比如数组

用于(int x[]:nums){ }

这里nums是一个二维数组,循环的每次迭代都会检索下一个元素,它是一个数组并存储在x中,这就是为什么需要将x声明为一维数组。
x是一个临时变量,在每次迭代中引用nums中的一个元素,nums的元素是一维数组,因此必须将x的类型声明为数组。

如果我的问题不清楚,请在此处进行评论,我将尝试向您解释此代码段的来源。这是教程还是您试图了解的内容坦德?还是你写的代码没有达到你预期的效果?首先,你应该始终按照风格惯例来编写代码。如果没有,那么其他人就更难阅读和理解,从而减少了别人愿意帮助你的可能性。@AndreiNicusan,摘自Herbert SchildzDanny的《通用编码会议》一书注释是格式化代码源、命名方法的一般指南