java 中for循环遍历数组的问题

我现在定义了一个30长度的数组 但是里面是有前两个是有值的,其他的都是null 没有赋值,我用for循环查找里面的一个值是不是在这个数组里面,当这个值不在数组里面的时候 会直接抛出异常
调试模式下 我发现for循环只能循环两次 而不是数组长度
打印数组长度是30,打印数组也是前两个有值 后面都是null

6个回答

另外加个判断条件 ,if(a[i] != NULL)

楼上说的对,判断下是否为空再判断是否一致

for的循环次数怎么写的呢?应该是循环次数有问题

先判断是否为空,再判断是否相同,if(a[i] != NULL){ if("XXX".equals(a[i]))}

这是因为当有null值,有地址,没引用,有可能是垃圾回收了

没有判断为空,而且只循环两次的原因在于只对前两个进行了赋值,后面都是null,没有内容,并不循环扫描,这可能是提高效率与java机制有关,我是新手。。。。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐