List.getSize () возвращает другой результат при запуске в отладчике Eclipse - PullRequest
0 голосов
/ 12 октября 2010

Я нашел что-то странное в отладчике затмения. Прежде всего, когда программа работает как простое Java-приложение, все в порядке, но когда я использую отладчик, некоторые ссылки становятся нулевыми, так что я ловлю исключение NullPointerException.

Вот гораздо более странный пример:

System.out.println("the list size is " + list.getSize());
System.out.println("the list size is " + list.getSize());
System.out.println("the list size is " + list.getSize());
System.out.println("the list size is " + list.getSize());

Когда я запускаю программу, вывод: 50, 50, 50, 50.

Но когда я использую отладчик, вывод: 50, 49, 48, 47. Это действительно странно, потому что метод getSize () ничего не меняет.

Ответы [ 2 ]

2 голосов
/ 12 октября 2010

Есть ли у вас какой-либо пользовательский код в отладчике («изменить значение» в представлении переменных принимает операторы), который может изменить список?Как list.remove() как пользовательское значение для некоторой переменной?

Также проверьте «детализаторы» для переменных в представлении переменных, есть ли там какой-то код для этого списка или какая-то другая переменная.

0 голосов
/ 12 октября 2010

Невозможно, если список создан непосредственно перед и с помощью однопоточного приложения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...