Java 二维数组周长和初始化数据

Java 二维数组周长和初始化数据,java,multidimensional-array,initialization,character,Java,Multidimensional Array,Initialization,Character,我是java的初学者,所以请对我放松点。我正在研究一个处理二维数组的实践方法问题。问题在于,有一种方法告诉您将名为array的二维字符数组作为参数。然后,它希望您将数组的所有元素初始化为“x”,但将周长(第一列和最后一列,以及第一行和最后一行)初始化为“o”的元素除外 我的问题是如何初始化每个元素以表示二维数组中的x和y,以及如何初始化周长的每个行和列元素? 例如,创建3行4列的二维数组- char[][] table = new char[3][4] -表的外周长将只填充o,而表的内周长将填

我是java的初学者,所以请对我放松点。我正在研究一个处理二维数组的实践方法问题。问题在于,有一种方法告诉您将名为array的二维字符数组作为参数。然后,它希望您将数组的所有元素初始化为“x”,但将周长(第一列和最后一列,以及第一行和最后一行)初始化为“o”的元素除外

我的问题是如何初始化每个元素以表示二维数组中的x和y,以及如何初始化周长的每个行和列元素? 例如,创建3行4列的二维数组-

char[][] table = new char[3][4]
-表的外周长将只填充o,而表的内周长将填充x,对吗

这就是输出的本质吗

  { o, o, o, o},
  { o, x, x, o},
  { o, o, o, o},
还有,如果我还不了解问题所在,有人能引导我朝着正确的方向走吗


谢谢

这最好作为两个独立的问题来处理:

  • 将第一行和最后一行初始化为“o”
  • 初始化其余行
  • 第一个问题很容易解决:迭代第一行和最后一行,并将每个元素设置为“o”。第二个问题细分为

    2a。将第一列和最后一列初始化为“o”

    2b。将其余列初始化为“x”

    假设一行的长度为
    length
    ,则使用

    array[0] = 'o';
    array[length - 1] - 'o';
    for(int i = 1; i < length - 1; i++)
        array[i] = 'x'
    
    数组[0]='o';
    数组[长度-1]-'o';
    对于(int i=1;i
    A
    new
    int数组将初始化为全零

    所以int[][]数组=新的int[3][4]

    看起来像

    {0,0,0,0}
    {0,0,0,0}
    {0,0,0,0}
    
    你必须自己设置周界

    您需要嵌套一些循环,确定您在数组中的位置,并相应地设置: (伪代码)

    一个长度为n的数组有n个元素,由0到n-1引用,所以如果有这样一个数组

    {1,2,3,4}
    
    数组[0]应该是1,这是因为Java数组是基于零的


    考虑到这一点,第一个总是0,最后一个是length-1,好吧,我对如何处理这个问题有了更好的理解。不过有一个问题。如何找到if语句的第一个和最后一个元素?row==array[0]。length是表示我要查找的第一个元素的正确方法吗?这是因为我首先使用该数组[0]创建了新数组
    {1,2,3,4}