РЕДАКТИРОВАТЬ: утверждения должны использоваться для обнаружения ошибок кодирования, а не ошибок ввода.
Они позволяют документировать допущения, сделанные при кодировании, способом, который можно применять при включении утверждений.Однако эти проверки не требуются хорошо протестированной программе после выпуска.
Они не подходят для проверки пользовательского ввода, поскольку они не предназначены для удобства и предполагают единственный способ исправить ошибочное утверждение.это исправить код (часто убивая или отключая программу в процессе)
Для проверки пользовательского ввода лучше использовать if(!condition) friendly_user_message()
.
утверждения позволяют выполнятьдорогие тесты, которые вы хотите отключить для производства cocde.
JVM оптимизирует утверждения, когда они не включены.
РЕДАКТИРОВАТЬ: у вас может быть сложная проверка, которую вы хотите выполнить, если включены подтверждения.Это можно сделать двумя способами:
boolean debug = false;
assert debug = true;
if (debug) // do something.
ИЛИ
assert validate();
// later
private boolean validate() {
return passed;
}