在Java中,负位置意味着什么?
作为Java的新手,我一直想知道这第四行代码是什么意思在Java中,负位置意味着什么?,java,Java,作为Java的新手,我一直想知道这第四行代码是什么意思 String[] Songs = new String[10]; int position; ..... if(position != -1) 在java中,数组中的位置为-1意味着什么?我知道在python中,像-1这样的值可能有助于反转元组。在您的示例中,该位置没有应用于数组。所以程序只是检查位置是否不是-1 如果您尝试访问歌曲[-1],您将获得ArrayIndexOutOfBoundsException。也许-1是一个哨兵值检查-
String[] Songs = new String[10];
int position;
.....
if(position != -1)
在java中,数组中的位置为-1意味着什么?我知道在python中,像-1这样的值可能有助于反转元组。在您的示例中,该位置没有应用于数组。所以程序只是检查位置是否不是-1
如果您尝试访问歌曲[-1],您将获得ArrayIndexOutOfBoundsException。也许-1是一个哨兵值检查-1,因为Java中的数组位置无效。您需要问一个更清楚的问题。您向我们展示的不会编译,因为
位置
未初始化。假设您正在将数组从最后一个元素迭代到第一个元素,并通过将当前位置
的值从长度-1
减小到0
(包括0
)。那么,对于位置的第一个值,您应该停止循环?这正是我的想法。搜索字符串内容的字符串方法如果不包含,则返回-1,所以我一直认为-1只是一个默认的DNE值。Position只是一个int。它可以是任何正值或负值。您发布的代码没有将position的值设置为any,然后测试它是否为-1。这没有任何意义,至少就你发布的代码而言。如果您使用position对数组进行索引,并且它的值为-1,则会出现一个异常,称为index out-bounds。