如果一维数组的各个元素仍然是一个数组,那么它就是一个二维数组。二维数组常用于表示表,表中的信息以行和列的形式组织,第一个下标代表元素所在的行,第二个下标代表所在的列。

一、二维数组的创建

  1、先声明,再用 new 运算符进行内存分配

    声明语法格式:

数组元素的类型 数组名字[][];
数组元素的类型[][] 数组名字;

   

     分配内存语法:

数组名字 = new 数组类型[][]
a = new int[2][4]; // 直接给每一维分配内存空间
b = new int[2][]; //分别为每一维分配内存,这种方式列可省,行不可省
a[0] = new int[2];
a[1] = new int[3];

  2、声明的同时为数组分配内存

数组元素的类型 数组名字[][] = new 数组元素的类型[][]

二、二维数组的初始化

  二维数组的初始化与一位数组初始化类似,同样使用大括号完成。

  语法格式:

type arrayname[][] = {{value1,value2},{value1,value2}}
    •   type:数组数据类型;
    • arrayname:数组名称,一个合法的标识符;
    • value:数组中各元素的值。

三、使用二维数组

  使用二维数组常见的就是遍历数组,介绍两种遍历数组的方法。

  先来学习一下各种表示方法:

表示二维数组的行数: 二维数组名.length

表示一行:      二维数组名[行下标]  (行下标的范围:[0,二维数组总行数 - 1])

表示每一行的列数:     二维数组名[行下标].length

表示具体的一个数据: 二维数组名[行下标][列下标]  (列下标的范围:[0,该行总列数 - 1])

  1、使用 for 循环遍历

  2、使用 foreach 循环遍历

  下面的案例详细介绍两种方式:

 int array[][] = new int[3][4];               //创建一个3行4列的数组,并且里面值都为默认值
// 使用 for 循环
for(int i=0;i<array.length;i++) { // 第一个循环,循环每一行
for (int j=0;j<array[i].length;j++) { //第二个循环,循环每行的每一列
System.out.print(array[i][j]);
}
System.out.println();
}
// 使用 foreach
for(int a[]: array) { // 第一个循环,第一个参数代表循环中的类型,即数组,第二个参数为循环对象
for(int j: a) { // 循环上一个循环中的第一个参数中的每一个即可
System.out.print(j);
}
System.out.println();
}

Java 数组(三)二维数组的更多相关文章

  1. Java菜鸟学习笔记--数组篇(三):二维数组

    定义 //1.二维数组的定义 //2.二维数组的内存空间 //3.不规则数组 package me.array; public class Array2Demo{ public static void ...

  2. Java中的二维数组

    Java 中的二维数组 所谓二维数组,可以简单的理解为是一种"特殊"的一维数组,它的每个数组空间中保存的是一个一维数组. 那么如何使用二维数组呢,步骤如下: 1. 声明数组并分配空 ...

  3. java基础5 (一维)数组和二维数组

    本文知识点(目录): 一维数组(一维数组的概念.优点.格式.定义.初始化.遍历.常见异常.内存分析以及常见操作(找最大值.选择排序.冒泡排序等等))    二维数组(二维数组的遍历.排序.查找.定义. ...

  4. 【转】java中定义二维数组的几种写法

    原文链接 注:以下的 type[][] var 也可以这样申明 type var[][] type为数组的类型,var为变量名 写法一:行列固定的数组 //定义二维数组写法1 class Test { ...

  5. 一维数组、二维数组——Java

    一. 一维数组 1.  数组是相同类型数据的有序集合 相同类型的若干个数据,按照一定先后次序排列组合而成 每个数组元素可以通过一个下标来访问它们 其中,每一个数据称作一个数组元素 2. 数组特点: 其 ...

  6. 062 01 Android 零基础入门 01 Java基础语法 07 Java二维数组 01 二维数组应用

    062 01 Android 零基础入门 01 Java基础语法 07 Java二维数组 01 二维数组应用 本文知识点:二维数组应用 二维数组的声明和创建 ? 出现空指针异常 数组的名字指向数组的第 ...

  7. java学习之二维数组

    java当中的二维数组,存储一组比较特殊的对象.他存储一个数组,同时存储的数组当中又存储着元素. java二维数组的声明方式一: class Arr2Demo { public static void ...

  8. java - day005 - 数组工具类, 数组复制,二维数组,变量,方法, 面向对象

    1. java.util.Arrays  数组工具类    Arrays.toString (数组) 数组值链接字符串 Arrays.sort(数组) 基本类型: 优化的快速排序 引用类型: 优化的合 ...

  9. Java数组之二维数组

    Java中除了一维数组外,还有二维数组,三维数组等多维数组.本文以介绍二维数组来了解多维数组. 1.二维数组的基础 二维数组的定义:二维数组就是数组的数组,数组里的元素也是数组. 二维数组表示行列二维 ...

  10. JAVA生成一个二维数组,使中间元素不与相邻的9个元素相等,并限制每一个元素的个数

    JAVA生成一个二维数组,使中间元素不与相邻的9个元素相等,并限制每一个元素的个数 示例如下 至少需要九个元素:"A","B","C",&q ...

随机推荐

  1. JAVA并发-对象方法wait

    最简单的东西,往往包含了最复杂的实现,因为需要为上层的存在提供一个稳定的基础,Object作为java中所有对象的基类,其存在的价值不言而喻,其中wait和notify方法的实现多线程协作提供了保证. ...

  2. Git工具使用基础

    Git 是一个分布式的版本控制工具,本篇文章从介绍Git开始,重点在于介绍Git的基本命令和使用技巧,让你尝试使用Git的同时,体验到原来一个版 本控制工具可以对开发产生如此之多的影响,文章分为两部分 ...

  3. 微信小程序 vscode 自动保存 保存自动编译 微信开发者工具崩溃

    修改vscode的自动保存延迟时间,将 auto save delay 选项 修改的长一点.

  4. PHP 多个字段自增或者自减

    //自增$res=Db::name('accessories') ->where('id',$req['id']) ->inc('number',$req['number']) -> ...

  5. Scrapy笔记03- Spider详解

    Scrapy笔记03- Spider详解 Spider是爬虫框架的核心,爬取流程如下: 先初始化请求URL列表,并指定下载后处理response的回调函数.初次请求URL通过start_urls指定, ...

  6. ABP 报错1

    报错:.net core 2.2 HTTP Error 502.5 - ANCM Out-Of-Process Startup Failure 解决:安装.net core 2.2就解决了, 本地安装 ...

  7. cf1199解题报告

    目录 cf1199解题报告 A B C D E F cf1199解题报告 发一波水题. A 模拟 #include <bits/stdc++.h> #define ll long long ...

  8. 【JZOJ100207】【20190705】决心

    题目 你需要构造一个排列 初始时\(p_i=i\),一次操作定义为: 选择一些\((x_i,y_i)\),满足每个数字只能出现一次 依次交换\(p_{x_i},p_{y_i}\) 定义一个排列 \(P ...

  9. CSS3中box-sizing属性的作用以及应用场景

    盒模型box-sizing: 取值 1.content-box 默认值,标准盒模型,设置宽度为内容宽度,实际宽度为左右边距加上左右边框加上左右填充再加上内容宽度 2.border-box 设置宽度等于 ...

  10. python: 添加自定义模块路径 —— 可以使用相对路径

    自定义模块时,添加模块路径: sys.path.append('..')