我有一个数字:466.62作为双精度数字,不能将其更改为字符串,如何摆脱小数点并打印46662?通过将值乘以100,我设法获得了46662.0,但是我不想打印小数点。谢谢
答案 0 :(得分:1)
当466.62乘以100时,最终结果也将保持两倍。这就是为什么您看到46662.0。因此,您需要将其转换为Int值,因此您应该这样做:
double vDouble = 466.62 *100
String vString = vDouble.toInt().toString();
这将给您4662。
对于更一般的情况,请使用字符串split method;
String str = '466.62';
//split string
var arr = str.split('.');
print(arr[0]); //will print 466
print(are[1]); //will print 62
答案 1 :(得分:0)
在您成功获得此46662.0之后,
使用此:
46662.0.toStringAsFixed(0);
print(46662.0.toStringAsFixed(0));
-这给出了46662
print(46662.0.toStringAsFixed(0).runtimeType);
-以字符串形式给出。
参考: https://api.dart.dev/stable/2.8.4/dart-core/num/toStringAsFixed.html