Dart:
Округление чисел
Как:
Dart предоставляет нативные методы в своем базовом типе num
для операций округления. Здесь мы рассмотрим методы такие, как round()
, floor()
, ceil()
, и как округлить до определенного количества десятичных знаков.
Округление до ближайшего целого числа:
var number = 3.56;
print(number.round()); // Выводит: 4
Округление вниз:
print(number.floor()); // Выводит: 3
Округление вверх:
print(number.ceil()); // Выводит: 4
Округление до определенного количества десятичных знаков:
Для округления до определенного количества десятичных знаков мы можем использовать метод toStringAsFixed()
, который возвращает строку, или использовать комбинацию pow
из dart:math
для числового результата.
import 'dart:math';
var number = 3.56789;
String roundedString = number.toStringAsFixed(2); // Для целей отображения
print(roundedString); // Выводит: 3.57
double roundedNumber = double.parse(roundedString);
print(roundedNumber); // Выводит: 3.57
// В качестве альтернативы, для числового результата:
double roundedToDecimal = (number * pow(10, 2)).round().toDouble() / pow(10, 2);
print(roundedToDecimal); // Выводит: 3.57
Хотя базовая библиотека Dart эффективно покрывает большинство потребностей в округлении, для более сложных математических операций или точных требований к округлению могут быть полезны библиотеки, такие как decimal
. Библиотека decimal
предлагает простой способ работать с десятичными числами без потери точности, что особенно удобно для финансовых расчетов, но для простых методов округления, как показано, базовые функциональные возможности Dart обычно достаточны.