我是java编程的新手,我不能在我的一个任务中绕过最后一个问题 .
我们被告知要创建一个静态方法,它将搜索二维数组并将二维数组的数字与输入数字进行比较......所以像这样:
private static int [] searchArray(int [] [] num,int N){
现在,我们返回的部分是一个新的一维数组,告诉每行中第一个数字的索引大于参数变量N.如果没有数字大于N,则返回-1阵列的那个位置 .
例如,一个名为“A”的多维数组:
4 5 6
8 3 1
7 8 9
2 0 4
如果我们使用这个方法并且做了searchArray(A,5),答案就是“{2,0,0,-1)”
2 回答
Here是关于Java 2D阵列的非常好的解释
第一个for循环(内部带有for的循环)以从左到右的方向从顶部到底部遍历2D阵列 . 这是,首先它与4然后5,6,8,3,1,7,8,9 .
首先创建结果数组 . 长度取决于num的行数 . 如果没有大于N的数字,result [i]被设置为-1 . 如果找到大于N的数字,则保存列索引result [i] = j并且因为我们使用了break来退出for循环只想找到大于N的第一个数字的索引 .
最后一个for循环只打印结果 .
通常,在使用多维数组时,您将使用嵌套的for循环:
我不会给你更多的基本结构,因为你需要理解这个问题;你将来会遇到很多这样的结构,但这应该让你开始 .