繁体   English   中英

在没有空值的数组中查找索引

[英]Find index in array that does not have a null value

我有一个名为e的数组,该数组包含对象,但不是在每个索引上。 因此,我使用一个for循环在包含对象的数组中查找第一个索引。 我通过查找不为null的值来做到这一点。 如果找到它,则将索引保存在名为index的变量中,然后退出循环。 如果找不到没有空值的索引,我想从该方法返回。 否则,我想继续使用包含数组索引的变量索引。

int index;

for (int i = 0; i < e.length; i++) {
    if (e[i] != null) {
        index = i;
        break;
    }
}

// if index did not get any value inside the for-loop, return

// And here I use the index that was found using the for-loop

我如何检查变量索引是否从for循环中获得了新索引?

谢谢!

这是始终初始化变量的原因之一。 如果初始化,则可以使用值来做事(并避免不必要的布尔标志)

int index = -1;

for (int i = 0; i < e.length; i++) {
    if (e[i] != null) {
        index = i;
        break;
    }
}

if (index == -1) return;

添加一个布尔标志,在循环之前将其初始化为false,仅在带有break语句的if块中将其设置为true。 循环后,检查标志的值。

将索引默认设置为-1,然后检查其> -1

int index = -1;

for (int i = 0; i < e.length; i++) {
    if (e[i] != null) {
        index = i;
        break;
    }
}

if (index >= 0) {


}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM