Фоновая обработка событий рабочего

Спецификация языка Java ( JLS ) описывает применимость оператора - для арифметических операций:

15.18. Аддитивные операторы

В каждом случае тип каждого из операндов бинарного оператора должен быть типом, который можно преобразовать ( §5.1.8 ) в примитивный числовой тип или ошибка времени компиляции.

blockquote>

Тип BigDecimal не является ни примитивным числовым типом (таким как int, short, float, double), ни конвертируемым в единицу. Напротив, хотя Integer, Float, Double и Short также не являются примитивными числовыми типами, для них определен оператор -, так как они могут быть преобразованы в их примитивные аналоги ( JLS- 5.1.8 ).

Как уже указывалось в других ответах, используйте BigDecimal.compareTo (BigDecimal) для сравнения BigDecimal экземпляров.

5
задан Max Galkin 22 May 2009 в 09:38
поделиться

3 ответа

Я видел это поведение прежде, и я обошел его путем украшения обработчика DoWork System.Diagnostics.DebuggerNonUserCode атрибут:

[System.Diagnostics.DebuggerNonUserCode]
void bw_DoWork(object sender, DoWorkEventArgs e)
{ ... }

Обратите внимание, что Вы будете только видеть это, если Вы будете работать в отладчике; даже без атрибута, все - как это должно быть при выполнении от оболочки.

Я искал это снова, и я все еще не вижу серьезного основания, почему необходимо сделать это. Я называю это ошибкой отладчика.

2
ответ дан 15 December 2019 в 06:35
поделиться

У меня была эта проблема прежде. E. Ошибка только установлена, когда Вы не работаете в Режиме отладки. Если Вы работаете в Отладке, exectuion останавливается в пятне Исключения. Однако запустите ту же программу в Не режим отладки (в Отладке VS->, Запускаются Без Отладки или Ctrl+F5), и противное диалоговое окно исключения не подойдет, и e. Ошибка будет исключением. Не уверенный, почему, но это - то, как это работает....

1
ответ дан 15 December 2019 в 06:35
поделиться

Ваш подход корректен. Просто нажатие продолжает сообщение и продолжает идти. Если в сомнении, протестируйте его за пределами сеанса отладки.

0
ответ дан 15 December 2019 в 06:35
поделиться
Другие вопросы по тегам:

Похожие вопросы: