Dart:
Arredondamento de números
Como fazer:
Dart fornece métodos nativos em seu tipo fundamental num
para operações de arredondamento. Aqui, exploraremos métodos como round()
, floor()
, ceil()
, e como arredondar para um número específico de casas decimais.
Arredondando para o inteiro mais próximo:
var number = 3.56;
print(number.round()); // Saída: 4
Arredondando para baixo:
print(number.floor()); // Saída: 3
Arredondando para cima:
print(number.ceil()); // Saída: 4
Arredondando para um número específico de casas decimais:
Para arredondar para um número específico de casas decimais, podemos usar o método toStringAsFixed()
, que retorna uma string, ou usar uma combinação de pow
de dart:math
para um resultado numérico.
import 'dart:math';
var number = 3.56789;
String roundedString = number.toStringAsFixed(2); // Para fins de exibição
print(roundedString); // Saída: 3.57
double roundedNumber = double.parse(roundedString);
print(roundedNumber); // Saída: 3.57
// Alternativamente, para um resultado numérico:
double roundedToDecimal = (number * pow(10, 2)).round().toDouble() / pow(10, 2);
print(roundedToDecimal); // Saída: 3.57
Embora a biblioteca central do Dart cubra a maioria das necessidades de arredondamento de forma eficaz, para operações matemáticas mais complexas ou requisitos precisos de arredondamento, bibliotecas como decimal
podem ser úteis. A biblioteca decimal
oferece uma maneira fácil de trabalhar com números decimais sem perder precisão, o que é especialmente útil para cálculos financeiros, mas para métodos simples de arredondamento como mostrado, a funcionalidade central do Dart geralmente é suficiente.