《架构风清扬-Java面试系列第11讲》Java的数组下标为什么要从0开始?

Java的数组下标为什么要从0开始?

别急着搜索答案

这道题我真问倒了不少人

当然,我不会因为这道题答不上来而否定一个人

很多网络视频经常会说因为一个问题直接pass一个人

其实很多时候也是因为流量的需要,也并无不妥之处,毕竟现在自然流量太少了

来,回到正题,给出你的答案

核心点就是性能优化

数组,其元素在内存中是连续存放的。数组下标本质上是一个偏移量,用来计算实际物理地址。当数组下标从0开始时,访问第i个元素的地址可以直接通过基地址加上i乘以单个元素所占字节数得到。若下标从1开始,则需做一次额外的减法运算(base_address + (i - 1) * type_size),这会增加CPU的计算负担。从0开始使得数组访问更高效。

你学到了吗?也欢迎来加入进阶版知识星球!

莫道细微无大用,滴水穿石有深痕。

步步为营积跬步,终至千里见功勋。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值