数组属性length、二维数组

了解成员数量(数组属性length)

如果我们想知道数组的大小,只需引用数组的一个属性length。Length属性表示数组的长度,即数组中元素的个数。

语法:

myarray.length; //获得数组myarray的长度

注意:因为数组的索引总是由0开始,所以一个数组的上下限分别是:0和length-1。如数组的长度是5,数组的上下限分别是0和4。

var arr=[55,32,5,90,60,98,76,54];//包含8个数值的数组arr 
document.write(arr.length); //显示数组长度8
document.write(arr[7]); //显示第8个元素的值54

同时,JavaScript数组的length属性是可变的,这一点需要特别注意。

arr.length=10; //增大数组的长度
document.write(arr.length); //数组长度已经变为10

数组随元素的增加,长度也会改变,如下:

var arr=[98,76,54,56,76]; // 包含5个数值的数组
document.write(arr.length); //显示数组的长度5
arr[15]=34;  //增加元素,使用索引为15,赋值为34
alert(arr.length); //显示数组的长度16

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>数组长度</title>
<script language="javascript">
 var mynum=new Array(65,90,88,98);
 document.write("数组的长度是:"+mynum.length);//在添加length要加上变量
</script>
</head>
<body>
</body>
</html>

二维数组

一维数组,我们看成一组盒子,每个盒子只能放一个内容。

一维数组的表示: myarray[ ]

二维数组,我们看成一组盒子,不过每个盒子里还可以放多个盒子。

二维数组的表示: myarray[ ][ ]

注意: 二维数组的两个维度的索引值也是从0开始,两个维度的最后一个索引值为长度-1。 

1. 二维数组的定义方法一

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
   }
 }


注意: 关于for 循环语句,请看第四章4-5 。

将上面二维数组,用表格的方式表示:

2. 二维数组的定义方法二

var Myarr = [[0 , 1 , 2 ],[1 , 2 , 3]]

3. 赋值

myarr[0][1]=5; //将5的值传入到数组中,覆盖原有值。

说明: myarr[0][1] ,0 表示表的行,1表示表的列。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>
<body>
<script type="text/javascript">
var myarr=new Array();
for(var i=1;i<4;i++)
   {
   myarr[i]=new Array();
    for(var j=1;j<6;j++)
   {
    myarr[i][j]=i*j;
    document.write("myarr["+i+"]["+j+"]的值:"+myarr[i][j]+"<br>");
    }
   }
</script>
</body>
</html>
myarr[1][1]的值:1
myarr[1][2]的值:2
myarr[1][3]的值:3
myarr[1][4]的值:4
myarr[1][5]的值:5
myarr[2][1]的值:2
myarr[2][2]的值:4
myarr[2][3]的值:6
myarr[2][4]的值:8
myarr[2][5]的值:10
myarr[3][1]的值:3
myarr[3][2]的值:6
myarr[3][3]的值:9
myarr[3][4]的值:12
myarr[3][5]的值:15


<think>好的,用户想了解Java二维数组length属性。首先,我得回忆一下Java中的数组结构。二维数组在Java中实际上是数组数组,也就是说,每个元素本身也是一个数组。那length属性在这里的应用可能和用户直觉有所不同。 首先,用户可能知道一维数组length就是元素个数。但二维数组因为每个行可以有不同的长度,所以需要分情况讨论。比如,一个二维数组int[][] arr = new int[3][4];,这里arr.length应该是3,表示有3行,而每一行的长度是4,所以arr[0].length是4。但如果是锯齿数组,比如第二行只有2个元素,那么arr[1].length就是2。 接下来,我需要考虑用户可能的疑问点。比如,他们可能误以为二维数组length返回的是总元素数,或者行和列的乘积。这时候需要明确说明length指的是第一维的长度,也就是行数。同时,每一行的列数可能不同,所以需要分别获取每一行的length。 然后,我应该举个例子来说明,这样用户更容易理解。例如,定义一个二维数组,展示如何获取行数和各行的列数。还要注意提到锯齿数组的情况,避免用户认为所有行的长度都相同。 另外,需要提醒用户,在访问具体行的length之前,要确保该行不为null,否则会抛出NullPointerException。这可能是一个常见的错误点,特别是当二维数组中的某些行未被初始化的时候。 最后,总结一下,确保用户明白二维数组length分两个层次:数组的行数,以及每一行的列数。通过分步骤的解释和示例代码,帮助用户建立清晰的理解。</think>关于Java二维数组的`.length`属性,可以通过以下步骤理解: ### 1️⃣ 二维数组本质 Java的二维数组本质上是**数组数组**,即每个元素都是一个一维数组。例如: ```java int[][] arr = new int[3][4]; // 3行4列的二维数组 ``` ### 2️⃣ `.length`的作用 - `arr.length` ➡️ 获取**行数**(外层数组长度) - `arr[i].length` ➡️ 获取**第i行的列数**(内层数组长度) ### 3️⃣ 示例代码 ```java public class Main { public static void main(String[] args) { int[][] matrix = { {1, 2, 3}, {4, 5}, {6} }; System.out.println("总行数: " + matrix.length); // 输出3 for (int i = 0; i < matrix.length; i++) { System.out.println("第" + i + "行的列数: " + matrix[i].length); } } } ``` 输出结果: ``` 总行数: 3 第0行的列数: 3 第1行的列数: 2 第2行的列数: 1 ``` ### 4️⃣ 注意事项 - 允许**锯齿数组**(各行长度不同) - 访问具体行时需先判断非空: ```java if (matrix[i] != null) { int cols = matrix[i].length; } ``` ### 5️⃣ 内存示意图 $$ \begin{array}{|c|c|} \hline \text{matrix[0]} & \rightarrow [1,2,3] \\ \hline \text{matrix[1]} & \rightarrow [4,5] \\ \hline \text{matrix[2]} & \rightarrow [6] \\ \hline \end{array} $$ 通过`.length`属性可以灵活处理不同维度的数组长度需求。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值