今天使用eclipse调试,总是会报异常,但是直接运行就不会有异常,为此郁闷了很久,怎么也找不到问题所在,后来偶然看到一个东西,灵光一闪,才想到了问题所在。在此记录一下这个问题。
以下是调试时的eclipse的运行截图。
这个问题的关键,就在于右上方的Expressions窗口。
这个里面有一个cursor.moveToNext() 的监视器,本来我只是用来显示一下,cursor里有没有下一个元素存在,但是由于对eclipse的运行原理不甚熟悉,导致了这个错误。 在每次运行的时候,自动执行了cursor.moveToNext(),导致cursor往后移动了一位,这就导致每次都会报CursorIndexOutOfBoundsException错误,产生异常。
通过这次的问题,总结出来,eclipse在expressions窗口显示的表达式,也是会自动运行的,并对现在调试的变量进行修改,引以为戒。