Java编程中二维数组的初始化和基本操作实例_java

Java二维数组的声明和初始化

1.二维数组可以看成以数组为元素的数组;
2.Java中二维数组的声明和初始化应按照从高维到低维的顺序进行.

实例:
静态初始化:
Array2.java:

程序代码

public class Array2
{
  public static void main(String args[]) {
    int a[][] = {{1,2},{3,4,5,6},{7,8,9}} ;
    for(int i=0 ; i <a.length ; i++) {
      for(int j=0 ; j<a[i].length ; j++) {
        System.out.println("a[" + i + "][" + j + "]=" + a[i][j]) ;
      }
    }
  }
} 

动态初始化:

程序代码

public class Array2D
{
  public static void main(String args[]) {
    int i , j ;
    String s[][] ;
    s = new String[3][] ;
    s[0] = new String[2] ;
    s[1] = new String[3] ;
    s[2] = new String[2] ;
    for(i=0 ; i<s.length ; i++) {
      for(j=0 ; j <s[i].length ; j++) {
        s[i][j] = new String("我的位置是:" + i + "," + j) ;
      }
    }
    for(i=0 ; i<s.length ; i++) {
      for(j=0 ; j<s[i].length ; j++) {
        System.out.println(s[i][j]) ;
      }
    }
  }
} 

关于Java中的二维数组操作[实例]:

public class Lesson{
  public static void main(String [] args){ 

    //二维数组的声明方式:
    //数据类型 [][] 数组名称 = new 数据类型 [长度][长度] ;
    //数据类型 [][] 数组名称 = {{123},{456}} ; 

    /*
    int [][] arr = {{123},{456}}; //定义了两行三列的二维数组并赋值
    for(int x = 0; x<arr.length; x++){ //定位行
      for(int y = 0; y<arr[x].length; y++){ //定位每行的元素个数
        System.out.print(arr[x][y]);
      }
      System.out.println("/n");
    }
    */
    int [][] num = new int [3][3]; //定义了三行三列的二维数组
    num[0][0] = 1; //给第一行第一个元素赋值
    num[0][1] = 2; //给第一行第二个元素赋值
    num[0][2] = 3; //给第一行第三个元素赋值 

    num[1][0] = 4; //给第二行第一个元素赋值
    num[1][1] = 5; //给第二行第二个元素赋值
    num[1][2] = 6; //给第二行第三个元素赋值 

    num[2][0] = 7; //给第三行第一个元素赋值
    num[2][1] = 8; //给第三行第二个元素赋值
    num[2][2] = 9; //给第三行第三个元素赋值
    for(int x = 0; x<num.length; x++){ //定位行
      for(int y = 0; y<num[x].length; y++){ //定位每行的元素个数
        System.out.print(num[x][y]);
      }
      System.out.println("/n");
    }
  }
}
//数组值arr[x][y]表示指定的是第x行第y列的值。
//在使用二维数组对象时,注意length所代表的长度,
//数组名后直接加上length(如arr.length),所指的是有几行(Row);
//指定索引后加上length(如arr[0].length),指的是该行所拥有的元素,也就是列(Column)数目。 

再来看一个例子:两个二维数组,将它们整合为一个新的二维数组,元素为两数组对应元素的和。输入两数组: {{1,5},{2,3},{6,5}},   {{4,2},{2,6},{5,7}}
输出打印: {{5,7},{4,9},{11,12}}

代码:
class arraysCtrl{
  static void arraysAdd(int[][] a,int[][] b)
  {
    StringBuffer sbResult = new StringBuffer("{");
    int[][] result = new int[a.length][b.length];
    for(int i=0;i<a.length;++i)
    {
      sbResult.append("{");
      for(int j=0;j<a[i].length;++j)
      { 

        result[i][j] = a[i][j]+b[i][j];
        sbResult.append(result[i][j]);
        if(j == a[i].length-1)
        {
          if(i == a.length-1)
          {
            sbResult.append("}");
          }else{
            sbResult.append("},");
          }
          break;
        }
        sbResult.append(",");
      }
      if(i == a.length-1)
      {
        sbResult.append("}");
        break;
      } 

    }
    System.out.println(sbResult);
  }
  public static void main(String[] args) { 

    int[][] aTst1 = {{1,5},{2,3},{6,5}}, aTst2 = {{4,2},{2,6},{5,7}};
    arraysAdd(aTst1,aTst2);
  }
} 

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索java
二维数组
二维数组初始化、c 二维数组初始化、java二维数组初始化、c语言二维数组初始化、二维字符数组初始化,以便于您获取更多的相关知识。

时间: 2024-08-03 02:30:53

Java编程中二维数组的初始化和基本操作实例_java的相关文章

语言二维数组-C语言编程中二维数组以及递归函数问题

问题描述 C语言编程中二维数组以及递归函数问题 有编号分别为0,1,2,3,4的5本书,准备分给5个人A,B,C,D,E,每个人阅读兴趣用一个二维数组加以描述,公式如下: 1 i喜欢j书 Like[i][j] = 0 i不喜欢j书 写一个程序,输出所有分书方案,让人人皆大欢喜.假定5个人对5本书的阅读兴趣如下图所示. 解决方案 答案 a 2 b 0 c 1 d 3 e 4 要程序先采纳 解决方案二: 大半夜的,干嘛递归呢 5个for循环妥妥的 int num=0; struct answer {

c++ 二维数组-C++构造函数中二维数组如何初始化的问题

问题描述 C++构造函数中二维数组如何初始化的问题 cannot convert '< brace-enclosed initializer list >' to 'int' in assignment这个是怎么回事 解决方案 你要不把代码也写进来吧,这也我们也不好分析.

java定义二维数组的几种写法(小结)_java

如下所示: //定义二维数组写法1 class numthree { public static void main(String[] args) { float[][] numthree; //定义一个float类型的2维数组 numthree=new float[5][5]; //为它分配5行5列的空间大小 numthree[0][0]=1.1f; //通过下标索引去访问 1行1列=1.1 numthree[1][0]=1.2f; // 2行1列=1.2 numthree[2][0]=1.3

数组中求乘积-JAVA中二维数组的函数运算

问题描述 JAVA中二维数组的函数运算 for(i=0;i<MAX;i++){ for(j=0;j<MAX;j++){ d[i][j]=0; for(k=0;k<MAX;k++) d[i][j]+=a[i][k]*b[k][j]; } } 就是在这个程序中为什么最后的乘积是 for(k=0;k<MAX;k++) d[i][j]+=a[i][k]*b[k][j];

java与c#中二维数组的区别

java中使用二维数组 public class Array2D...{ public static void main(String[] args)...{ int myInt[][]=new int[5][10]; //遍历,给数组中的每一个数组赋值 for(int i=0;i<myInt.length;i++)...{ for(int j=0;j<myInt[0].length;j++)...{ myInt[i][j]=i*j; } } System.out.println ("

关于JS中二维数组的声明方法_javascript技巧

如下所示: var myarr=new Array(); //先声明一维 for(var i=0;i<2;i++){ //一维长度为2 myarr[i]=new Array(); //再声明二维 for(var j=0;j<3;j++){ //二维长度为3 myarr[i][j]=i+j; // 赋值,每个数组元素的值为i+j } } 以上就是小编为大家带来的关于JS中二维数组的声明方法的全部内容了,希望对大家有所帮助,多多支持~ 以上是小编为您精心准备的的内容,在的博客.问答.公众号.人物.

java-Java中二维数组的遍历原理是什么

问题描述 Java中二维数组的遍历原理是什么 public class Demo{ public static void main(String[] args){ int a[][]={{1,2},{3,4},{5,6}}; for(int i=0;i<a.length;i++){ for(int j=0;j<a[i].length;j++){ System.out.print(" "+a[i][j]); } System.out.println(); } } } 解决方案

link中二维数组如何按照行来颠倒?

问题描述 link中二维数组如何按照行来颠倒? link中二维数组如何按照行来颠倒? 解决方案 先转换为交错数组,然后直接对第一维做Reverse

c语言-java的二维数组和C语言二维数组的储存结构有什么区别?

问题描述 java的二维数组和C语言二维数组的储存结构有什么区别? java的二维数组和C语言二维数组的储存结构有什么区别?,数据结构有什么区别吗?有人说java的数组在内存中存储不是连续的,, 解决方案 java二维数组的存储在内存中不一定连续.二维数组是一维的一维,也就是树形结构. 解决方案二: 个人认为是连续的,要支持随机访问,当然如果内存真的不是连续的,那就是vm的事情了 解决方案三: C语言是连续的,Java应该也是连续的吧,这个问题还真没深究过.