Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗dtPmNuDz 50 of 412 menu
◀ ▶

Деление на ноль в Dart

Поведение зависит от оператора и типа операндов. Оператор / с double на ноль не останавливает программу: получается бесконечность. Операторы ~/ и % с нулем в делителе останавливают программу с ошибкой.

Дробное деление на ноль дает Infinity:

print(7.0 / 0.0); // Infinity

Целочисленное деление с нулем в делителе не дает результата:

print(7 ~/ 0); // программа останавливается

Остаток от деления на ноль ведет себя так же:

print(7 % 0); // программа останавливается

Между двумя int оператор / тоже дает double, поэтому 7 / 0 приводит к бесконечности, а не к ошибке:

print(7 / 0); // Infinity

Дан следующий код:

var val = 10; print(val ~/ 0);

Скажите, завершится ли программа с ошибкой.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить