之前关于数组的索引为甚么从0开始?
有很多说法:
1:
下标的含意是:当前元素到第一个元素的偏移量。第一个元素的下标自然就是0,第二个元素的下标为1,第n个元素的下标为n-1。
2:
计算一个数组元素的地址需要将数组的起始地址加上该元素的索引。将起始索引设为1要么会浪费数组的第一个元素的空间,要么会花费额外的时间来将索引减1。
3:
数组的下标就是对array这个数组进行偏移。这是硬件特性决定的。
因为数据都是存放在内存地址里的,而数据的获取方式,是先得到一个数据的地址,然后对其进行偏移。
如果数组从1开始计算,那么获取数组的第一个元素表达方式就是array[1]
还有什么规定之类的…各种官方的说法和度娘都太笼统了!!!
终于BOSS今天闲聊时说到这个话题!!!
他说试想你写数字时,随便写:123/234/568/987/258/0123/02365/
写的很爽,写了满满1本书的数字!!!哈哈… 但是当你再从这些数据里找一个指定的数字时,会不会感觉蛋疼! 这就好比计算机从内存中往硬盘上write时很爽!但当从硬盘中外内存中read时,要经历磁盘寻道,读的性能会大大降低。
听完恍然大悟!!!
希各位好友评论 指证…(悲催的是今天湖人大败鹈鹕 …哎距快船还有4个胜场国王3个)