[JAVA] .length 获取数组长度


其实写这篇日志的原因是我钻牛角尖了。。。


老师在课上有讲到一个关于获取数组长度的知识点——


格式:

数组名.length


定义:
直接获取对应数组的长度(或内含元素个数)


然后老师出了一个关于打印数组内所有元素的练习。

需求:

在屏幕上依次打印数组内所有元素,并已逗号隔开。


思路:

1)定义功能,打印数组内部所有元素,返回值类型为void;

2)有一个未知参数参与运算:元素的个数,用变量记录。


代码如下:


public static void printArr(int []arr)// 参数列表中为数组类型
	{
		for (int x=0;x<arr.length;x++)//满足条件,当元素个素变量小于数组长度时,进行循环
		{
			if (x!=arr.length-1)//为了最后一个被打印的元素不带“,” 用判断将最后一个元素判断出来
				System.out.print(arr[x]+" ,");
			else 
				System.out.println(arr[x]+" ");
		}
			
		
	}


其实我就是在arr.length-1这里纠结了很久。

始终没有明白为什么会-1 


后来我将arr.length的值直接打印,发现结果为数组所有元素的个数。练习中为8

于是结果自然就出来了,为了让最后一个元素不被打印,所以才会使用arr.length-1

因为arr.length-1的结果为7 , 而数组中元素的角标是以0开始。

所以它自然是最后一个元素了,便可以打印出没有逗号的形态。


问题的重点及结果是——


我把角标序号和数组长度搞混淆了,所以才纠结了这么久。




  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值