Запись на курсы по HTML, CSS, JavaScript, PHP, Python, фреймворкам и CMS,
а также: помощь в поиске работы и заказов, стажировка на реальных проектах→
215 of 1310 menu
Новый формат обучения! Репетиторство по программированию. Есть еще 3 свободных места! Жми для подробностей.

Функция assert

Функция assert проверяет переданное булево выражение. Если выражение возвращает false, выбрасывается исключение AssertionError. По умолчанию проверки assert работают только в режиме отладки (при включенном флаге -ea).

Синтаксис

assert(value: Boolean)
assert(value: Boolean, lazyMessage: () -> Any)

Пример

Проверим простое утверждение:

val x = 5 assert(x > 0)

Исключение не будет выброшено, так как условие истинно.

Пример

Проверим ложное утверждение:

val x = -1 assert(x > 0)

Будет выброшено исключение:

Exception in thread "main" java.lang.AssertionError: Assertion failed

Пример

Использование сообщения об ошибке:

val age = -5 assert(age >= 0) { "Age cannot be negative" }

Будет выброшено исключение с сообщением:

Exception in thread "main" java.lang.AssertionError: Age cannot be negative

Пример

Проверка массива:

val arr = [1, 2, 3] assert(arr.isNotEmpty())

Смотрите также

  • функцию check,
    которая всегда проверяет условие (не зависит от флага -ea)
  • функцию require,
    которая проверяет условия для параметров функций
  • функцию throw,
    которая выбрасывает исключение вручную