为什么数组索引在 Java 等编程语言中使用 0 而不是 1?我是 Java 的新手,欢迎任何解释。
原文由 Shashank Agarwal 发布,翻译遵循 CC BY-SA 4.0 许可协议
为什么数组索引在 Java 等编程语言中使用 0 而不是 1?我是 Java 的新手,欢迎任何解释。
原文由 Shashank Agarwal 发布,翻译遵循 CC BY-SA 4.0 许可协议
为了扩展 @Kevin 的回答,我引用了 Programmers.SE 上的一个回答:
数组中的索引并不是真正的索引。它只是一个偏移量,即距数组开头的距离。第一个元素位于数组的开头,因此没有距离。因此偏移量为 0。
此外,如果您想了解更多有关不同语言如何进行数组索引的信息,请查看 维基百科 上的详尽列表。
原文由 Engineer2021 发布,翻译遵循 CC BY-SA 3.0 许可协议
15 回答8.4k 阅读
8 回答6.2k 阅读
1 回答4.1k 阅读✓ 已解决
3 回答2.2k 阅读✓ 已解决
2 回答3.1k 阅读
2 回答3.8k 阅读
3 回答1.7k 阅读✓ 已解决
Java 使用从零开始的索引,因为 c 使用从零开始的索引。 C 使用从零开始的索引,因为数组索引只不过是一个内存偏移量,所以数组的第一个元素位于它已经指向的内存中,
*(array+0)
。另请参阅维基百科的 不同语言的数组索引?