oop - 浮动没有正常显示(飞镖语言)
问题描述
我正在尝试计算数字 4.2 + 0.2 - 0.1 然而,尽管值为 4.3,但输出为 4.300000000000001。
这是animal.dart
课
class Animal {
String name = '';
int age;
double weight = 0;
Animal(this.name, this.age, this.weight);
void eat() {
print('$name is eating.');
weight = weight + 0.2;
}
void sleep() {
print('$name is sleeping.');
}
void poop() {
print('$name is pooping.');
weight = weight - 0.1;
}
}
这就是main()
功能
import "dart:io";
import "lorem.dart";
void main(){
var pet = Animal('Flowie', 2, 4.2);
pet.eat();
pet.poop();
print(pet.weight);
}
输出如下:
Flowie is eating.
Flowie is pooping.
4.300000000000001
将重量输出到4.3
而不是的正确方法是4.300000000000001
什么?
解决方案
推荐阅读
- compiler-errors - 使用 OpenModelica v1.14.1(64 位)编译简单的 Modelica 代码时出现多个未声明的标识符错误
- websphere - 在 Solaris 中启动 websphere 的 dmgr 时出错
- amazon-web-services - 责任共担模型 - AWS
- sql-server - SSRS:有没有办法将参数的值传递给 SQL 查询中的“值”关键字?
- python - Python Pandas 条形图 - 更改特定条形的颜色
- python - DatasetV1Adapter 返回意外的数据类型
- regex - 正则表达式在第一行和第二行添加符号
- ios - Swift:如何将项目分组或俱乐部下载到一个单元格 tableView
- python - 如何像列表一样在外部使用 csv_reader 对象?
- internet-explorer - 如何在 IE 中重新加载页面时销毁 websocket