博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
二维数组简单使用
阅读量:4958 次
发布时间:2019-06-12

本文共 1685 字,大约阅读时间需要 5 分钟。

二维数组的使用

java 语言里提供了支持多维数组的语法。

 

如果说可以把一维数组当成几何中的线性图形,那么二维数组就相当于是一个表格,像右图Excel中的表格一样。

 

对于二维数组的理解,我们可以看成是一维数组array1又作为另一个一维数组array2的元素而存在。其实,从数组底层的运行机制来看,其实没有多维数组。

 

声明

数据类型[][] 变量名;

初始化

格式1(动态初始化):

语法

int[][] arr = new int[3][2];

解释

 定义了名称为arr的二维数组

 

 二维数组中有3个一维数组

 

 每一个一维数组中有2个元素

 

 一维数组的名称分别为arr[0], arr[1], arr[2]

 

 给第一个一维数组1脚标位赋值为78写法是:arr[0][1] = 78;

格式2(动态初始化):

语法

int[][] arr = new int[3][];

解释

二维数组中有3个一维数组。

 

 每个一维数组都是默认初始化值null (注意:区别于格式1

 

 可以对这个三个一维数组分别进行初始化

 

  arr[0] = new int[3];    arr[1] = new int[1];   arr[2] = new int[2];

注:int[][]arr = new int[][3];  //非法

格式3(静态初始化):

语法

int[][] arr = new int[][]{

{3,8,2},{2,7},{9,0,1,6}};

解释

 定义一个名称为arr的二维数组,二维数组中有三个一维数组

 

 每一个一维数组中具体元素也都已初始化

 

 第一个一维数组 arr[0] = {3,8,2};

 

 第二个一维数组 arr[1] = {2,7};

 

 第三个一维数组 arr[2] = {9,0,1,6};

 

 第三个一维数组的长度表示方式:arr[2].length;

注意

注意特殊写法情况:int[] x,y[]; x是一维数组,y是二维数组。

Java中多维数组不必都是规则矩阵形式

 

二维数组的第一个[]必须有数组长度。

使用

一般和嵌套for一起使用

int[][] a=new int[3][2];

for (int i = 0; i < a.length; i++) {

for (int j = 0; j < a[i].length; j++) {

System.out.println(a[i][j]);

}

}

杨辉三角

//设置杨辉三角的行数

int count = 10;

//定义一个二维数组

int[][] yangHui = new int[count][];

 

//给二维数组赋值

for(int i = 0;i < yangHui.length;i++){

//动态初始化二维数组

yangHui[i] = new int[i + 1];

 

//给开头和结尾赋1

yangHui[i][0] = yangHui[i][i] = 1;

 

/*

* 给非开头和结尾赋值,因为开头和结尾的值已经为1,所以开头和结尾的值都不用改。

* j = 1 :是表示从每个数组的第二个数字开始,因为第一个数字的值已定

* j < yangHui[i].length :是表示每个数组的最后一个数字不变。因为最后一个数字也是固定不变的

*/

for(int j = 1;j < yangHui[i].length - 1;j++){

yangHui[i][j] = yangHui[i -1][j] + yangHui[i - 1][j -1];

}

 

}

 

//便利二维数组

for (int i = 0; i < yangHui.length; i++) {

for (int j = 0; j < yangHui[i].length; j++) {

System.out.print(yangHui[i][j]+"\t");

}

System.out.println("");

}

转载于:https://www.cnblogs.com/houwenbo/p/11536601.html

你可能感兴趣的文章
appium(13)- server config
查看>>
图形学噪声解析
查看>>
IIS负载均衡-Application Request Route详解第六篇:使用失败请求跟踪规则来诊断ARR...
查看>>
管理信息系统 第三部分 作业
查看>>
织梦首页TAG标签页的仿制
查看>>
织梦系统调用点击次数代码优化提高页面打开速度
查看>>
[Leetcode Week13]Search a 2D Matrix
查看>>
通过被调函数改变主调函数的值
查看>>
android 数据存储之SQLite
查看>>
java 对象的序列化与反序列化
查看>>
luogu最长连号
查看>>
二叉树、树、森林
查看>>
查看端口占用cmd命令
查看>>
2019.01.17王苛震作业
查看>>
解决package jdk1.8-2000:1.8.0_171-fcs.x86_64 is already installed问题
查看>>
XPath Helper和XPath语法
查看>>
Halcon学习(八)文本操作
查看>>
MFC电子词典
查看>>
简单工厂(Simple Factory)
查看>>
04: 打开tornado源码剖析处理过程
查看>>