双打圆名单

Round list of doubles

我有一个包含许多双精度元素的列表,其中包含例如以下元素:[1.95, 1.986, 1.9602, 2.0477,...

我尝试使用此代码将元素四舍五入到两位小数:

List<double> listMax = List.from(data_snap()['animals']); //from Firebase
for (var value in listMax) {
  value = roundDouble(value,2);
}

double roundDouble(double value, int places){
  double mod = pow(10.0, places);
  return ((value * mod).round().toDouble() / mod);
 }

作为替代:

listMax.forEach((element) => roundDouble(element,2));

但是两次代码都不成功

在您的代码中,您正在更改临时变量的值,要更改列表中的值,您的代码应如下所示:

List<double> listMax = List.from(data_snap()['animals']); //from Firebase
for(int i =0 ;i<listMax.length;i++){
  listMax[i]= roundDouble(listMax[i],2);
}

double roundDouble(double value, int places){
  double mod = pow(10.0, places);
  return ((value * mod).round().toDouble() / mod);
 }