Java代码长度-1含义[重复]

zi8p0yeb  于 2023-01-01  发布在  Java
关注(0)|答案(7)|浏览(194)
    • 此问题在此处已有答案**:

(17个答案)
what does it mean arrays.length -1 in java?(2个答案)
How do you determine the legal index range for an array?(1个答案)
5年前关闭。
社区在3天前审查了是否重新讨论此问题,并将其关闭:
原始关闭原因未解决

class Zillion {

    private int zilly[];

    public Zillion(int size){
        zilly = new int[size];
    }

    public void increment(){
        int i=zilly.length -1;
        while(i>=0){
            if(zilly[i]!=9){
                zilly[i]+=1;
                i=-1;
            }
            else{
                zilly[i]=0;
                i--;
            }
        }
    }

我刚刚得到了一个基本的java代码,不知道(int i=zilly.length -1;)这部分的长度-1是什么意思。有人能解释一下吗?

hts6caw3

hts6caw31#

数组的大小是数组中元素的个数,但是数组的第一个索引是0。例如:

int zilly[] = {1, 2, 3, 4}

在本例中:
zilly.size返回:4
但是zilly[4]不存在,因为第一个元素的索引为0
zilly.[zilly.size - 1]返回最后一个元素(4)。
希望有帮助。

xn1cxnb4

xn1cxnb42#

nameOfTable.lenght返回Arrays的第一个索引从0 ==〉(1st - 1 = 0)开始的元素的编号,因此最后一个索引是n - 1

mdfafbf1

mdfafbf13#

int i=zilly.length -1;是数组的最后一个索引,因为数组从索引0开始。
顺便说一句,这段代码的格式需要改进,以更好地描述它在做什么,例如,让你感到困惑的那一行。
int i = zilly.length - 1;只需将语句正确地隔开,就可以使语句更容易理解。

lfapxunr

lfapxunr4#

zilly.length -1定义自身。数组总长度(大小)-1。
由于数组的第一个索引从0开始,因此最后一项位于位置n-1,其中n是数组的大小。

hmae6n7t

hmae6n7t5#

在Java中,数组的索引从0开始,因此数组的最后一个元素由zilly[zilly.length - 1]访问。如果你尝试这样访问它:

zilly[zilly.length]

你会得到一个越界异常
代码中的while循环从最后一个索引开始,向下迭代第一个元素。

j9per5c4

j9per5c46#

zilly.length给出数组的长度,即其中元素的数量。
zilly.length-1给出数组的最后一个索引,因为数组的计数从0开始。
所以基本上你是按照降序迭代的,也就是从数组的最后一个元素到数组的第一个元素。

o7jaxewo

o7jaxewo7#

这意味着我们想要得到数组的最后一个索引,然后我们从数组的末尾到开头循环。
zilly.length是数组大小-但数组的索引从0开始,所以最后一个索引是zilly.length-1

相关问题