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

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