房上的猫:二维数组

二维数组是数组的数组。

二维数组基础

  基本的定义方式有两种形式,如:

  int [][] i = new int[2][3];(推荐)

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

变长的二维数组

public static void main(String[] args) {
        int[][] a = new int[3][];

        a[0] = new int[2];
        a[1] = new int[3];
        a[2] = new int[1];
        
        //Error:不能空缺第一维大小
        //列:int[][] b = new int [][3]  是错误的
    }
}

 二维数组的每个元素都是一个一维数组,这些数组不一定都是等长的。

  声明二维数组的时候可以只指定第一维大小,空缺出第二维大小,之后再指定不同长度的数组。但是注意,第一维大小不能空缺(不能只指定列数不指定行数)。

  二维数组也可以在定义的时候初始化,使用花括号的嵌套完成,这时候不指定两个维数的大小,并且根据初始化值的个数不同,可以生成不同长度的数组元素。

public class Aini {

    public static void main(String[] args) {
        int[][] a = new int[][]{{1,2,3},{4},{5,6,7,8}};

        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("");
        }
        
    }
}

 注:多维数组同理

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏牛肉圆粉不加葱

(2) - apply, update 语法糖

语法糖,又称为糖衣语法,指计算机语言中添加的某种语法,这种语法对语言的功能并没有影响,但是更方便程序员使用。通常来说可以增加程序的可读性,从而减少程度代码出错的...

662
来自专栏数据结构与算法

set用法小结

set本质上是一棵红黑树,用法也就那么几个,插入删除lowerbound,再就是跌倒器之类的

3769
来自专栏大闲人柴毛毛

剑指 offer代码解析——面试题29数组中出线次数超过一半的数字

题目:数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。 分析:本题最直观的思路就是分别统计数组中每个数出现的次数,然后求出最大值,判断是否超过...

3276
来自专栏C语言及其他语言

C语句和程序流

1、 表达式和语句 在C中,表达式代表值,而语句代表给计算机的指令。 表达式 表达式由运算符和操作数组成。最简单的表达式只是一个不带运算符的常量或者变...

3096
来自专栏赵俊的Java专栏

空格替换

2118
来自专栏土豆专栏

Java面试之comparator与comparable

compareTo(T o),比较此对象与指定对象的顺序。如果该对象小于等于或者大于指定对象,则分别返回负整数、零、正整数

1441
来自专栏十月梦想

js对象创建

803
来自专栏程序员互动联盟

【编程基础】C语言复合赋值运算符

在C语言的赋值中有一种特殊的赋值运算符,就是复合赋值运算符。复合赋值运算符就是在赋值符“=”之前加上其它二目运算符可构成。比如大家可能最常看到这样的语句: n ...

2676
来自专栏思考的代码世界

Python编程从入门到实践之使用列表|第3天

要创建切片,可指定要使用的第一个元素和最后一个元素的索引。与函数range()一样,Python 在到达你指定的第二个索引前面的元素后停止。要输出列表中的前三个...

3146
来自专栏十月梦想

数组相关处理函数

********************************************************************************...

795

扫描关注云+社区