之前对Java中的数组一直是一知半解,特别是数组中的长度问题。今天对这个问题也算是小有理解,算是对java数组的有了更进一步的了解吧。不说了,先来例子再说:package com.test;

public class Test {

/**

* @param args

*/

public static void main(String[] args) {

// TODO Auto-generated method stub

final   int   TABLE_SIZE   =   5;

final   int   TABLE_SIZE1   =   6;

final   int   TABLE_SIZE2   =   7;

int[][][]   table1   =   new   int[TABLE_SIZE][TABLE_SIZE1][TABLE_SIZE2];

int[][]   table2   =   new   int[TABLE_SIZE][TABLE_SIZE1];

int[]   table3   =   new   int[TABLE_SIZE];

int   a   =table1[4][0].length;

int   b   =table2[2].length;

int   c   =table3.length;

System.out.println(a);

System.out.println(b);

System.out.println(c);

}

}

这个例子的输出结果是什么呢?

相信大家对一维数组没有什么问题,那我们就来看看二维数组数组到底是怎么回事吧。

Java中多维数组被看作数组的数组。初看这句话,确实有点不是很好理解(特别对于我这样的菜鸟级别的啊)。用例子说话吧。就上例:

int b =table2[2].length;

就这个b它结果输出的TABLE_SIZE1的值。我们知道table2是一个二维数组,而length方法取出的结果是数组中的长度而且一次取出数组中的长度,即:如果是一位数组的话,直接取出的话就是一位数组的长度,如:int c =table3.length;  此时c的结果就是一位数组table3的长度即TABLE_SIZE;如果 int b =table2[2].length;换成 int b =table2.length;  此时b输出的结果是二维数组中的第一维数组的长度即TABLE_SIZE(即跟c相等) ,而如果是int b =table2[2].length,注意此时length的长度是二维数组table2的第二维数组的长度即TABLE_SIZE1 ,而且只要table2[2].这个中括号中的值x是在 0到其第一维数组的长度减1即(TABLE_SIZE-1),其table2[x].length的长度都是第二维数组的长度,以此类推,例子中a的值就是TABLE_SIZE2。

所以例子中的结果应该是:

7

6

5

java数组长度定义_java怎么定义数组的长度?java中的数组长度问题相关推荐

  1. java 静态常量定义_Java常量定义需要注意事项及static作用(复习)

    在任何开发语言中,都需要定义常量.在Java开发语言平台中也不例外.不过在Java常量定义的时候,跟其他语言有所不同.其有自己的特色.在这篇文章中,主要针对Java语言中定义常量的注意事项进行解析,帮 ...

  2. java二维数组的扩容_Java开发笔记(二十一)二维数组的扩展

    前面介绍的数组容纳的是一串数字,仿佛一根线把这组数字串了起来,故而它只是一维数组.一维数组用来表示简单的数列尚可,要是表达复杂的平面坐标系,那就力不从心了.由于平面坐标系存在水平和垂直两个方向,因此可 ...

  3. java多态讲解例子_Java多态性定义与用法实例详解

    本文实例讲述了Java多态性定义与用法.分享给大家供大家参考,具体如下: 多态性是通过: 1 接口和实现接口并覆盖接口中同一方法的几不同的类体现的 2 父类和继承父类并覆盖父类中同一方法的几个不同子类 ...

  4. java记事本应用程序_Java教程:使用记事本编写运行Java程序

    Java教程经过上节的操作已经配置完了 Java 的开发环境,但并不清楚所配置的开发环境是否真的可以运行 Java 应用程序.为了解除这个疑虑,也为了使读者对开发 Java 应用程序的步骤有一个初步的 ...

  5. java工程师占比_Java工资怎么样?哪个地方Java工作机会最多?

    随着IT产业的发展,JAVA语言因其独有的特点,使其在各项服务器中应用程序的开发所占有一定的优势,随着JSP技术的发展,使Java语言的网络应用更为实际化.更高效快捷,成为IT产业常用的技术. 越来越 ...

  6. java jvm内存模型_Java(JVM)内存模型– Java中的内存管理

    java jvm内存模型 Understanding JVM Memory Model, Java Memory Management are very important if you want t ...

  7. java编程基础笔记_Java编程基础阶段笔记 day01 Java语言概述

    常用的DOS命令 dir :    列出当前目录下的文件以及文件夹 md :   创建目录 rd :     删除目录 cd :    进入指定目录 cd.. :  退回到上一级目录 cd\:     ...

  8. java强制转换用法_Java入门课|这才是Java强制类型转换的正确使用方法,你真的会用这些吗...

    [摘要]作为一门面向对象编程语言,Java吸收了C++语言的优点,也展现了其强大的一面,我们能在各个地方看到其功能强大和简单易用的两个特征,当然,也吸引了很多程序员的注意力,所以就有人想了解Java的 ...

  9. java swing登录系统_Java实现注册登录系统——基于Java Swing实现

    技术简介:Java Swing 介绍 Swing 是一个为Java设计的GUI工具包. Swing是JAVA基础类的一部分. Swing包括了图形用户界面(GUI)器件如:文本框,按钮,分隔窗格和表. ...

最新文章

  1. 出现运行时间错误_Excel VBA 运行错误,你知道为何突然出现错误的原因吗
  2. 2.3.2 Batch Norm介绍
  3. Java实现图的深度和广度优先遍历算法
  4. 软件工程学习笔记《目录》
  5. docker 镜像修改的配置文件自动还原_PVE部署LXC运行docker
  6. 2018.5.28 PSOC第一枪:基于cypress的蓝牙开发
  7. 1到n的整数中,1出现的次数
  8. Cloudera Manager安装之Cloudera Manager 5.3.X安装(三)(tar方式、rpm方式和yum方式)...
  9. python绘制音频频谱_Python 读取wav画频谱
  10. 银监会计算机知识点,2015国考银监会计算机专业考试分析
  11. 如何产生cpk图形_真正把Cp、Cpk、Pp、Ppk讲清楚!
  12. elasticsearch查询QueryBuilders详解(es7.80)
  13. SPSS 24 安装详细教程及下载
  14. 金士顿u盘写保护修复教程
  15. overflow:atuo;隐藏滚动条
  16. 3DS MAX 基础知识 材质编辑器
  17. 传统计算机硬盘和固态硬盘有哪些区别,工业级固态硬盘与传统硬盘有什么区别...
  18. python客户端_python客户端编程
  19. 读《码农翻身:用故事给技术加点料》
  20. GPS定位详解——涉及GPS版本变化、定位获取失败等常见问题。

热门文章

  1. Linux中的vsftpd服务的部署及优化
  2. 众焱公司网络平台建设-传输网的规划与设计
  3. 视频编解码学习之五:差错控制及传输
  4. 腾讯云轻量4核8G12M应用服务器配置性能评测(全解析)
  5. 工作站HP电脑系统的重装
  6. 中M22春C、Java入门练习-7.2
  7. java logic赋予多个值,如何在VHDL中编写具有输入相关范围的std_logic_vector赋值?
  8. C语言结构体struct详解
  9. msyql8 Your password does not satisfy the current policy requirements
  10. 笔记本热点开启却无法为其他设备提供网络问题