数组的.length()方法对数组.hasNext()方法影响

青春壹個敷衍的年華 提交于 2019-12-10 17:21:26

.length()方法会将数组的指针移动到数组末尾,导致.hasNext()方法无法正常使用。
再写mongodb的一个程序段的时候想用.length()方法获得数组的长度,接着又用到.hasNext()方法, while (数组.hasNext()),程序根本不进while循环体,所以想到了会不会是.length()方法的问题,一检测,果然是。
在这里插入图片描述显然控制台打印出了5,但是并没有打印while()里面的东西,显然就是没有进while(),即cursor.hasNext()为假,即为空,分明有东西,为什么为空呢???仔细一想,是在计算数组的长度时,指针被放到了数组末尾。
我们重新定义一边那个数组,将指针放到本来在的地方,即数组起始位置的前一个位置,此时,进while了,并且正常执行
在这里插入图片描述

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!