Flutter 计算两组数据之间的差异,并将结果除以颤振
我有四个日期(日期1、日期2、日期3和日期4) 我有一个脚本,它计算出date1和date2之间的天数(“date1calc”),然后计算出date3和date4之间的天数(“date2calc”) 我现在想做的是date1calc除以date2calc得到一个值。我们称之为“日期值”。虽然我获得了date1calc和date2calc的正确值,但它将dateValue显示为“0” 代码如下:Flutter 计算两组数据之间的差异,并将结果除以颤振,flutter,date,dart,Flutter,Date,Dart,我有四个日期(日期1、日期2、日期3和日期4) 我有一个脚本,它计算出date1和date2之间的天数(“date1calc”),然后计算出date3和date4之间的天数(“date2calc”) 我现在想做的是date1calc除以date2calc得到一个值。我们称之为“日期值”。虽然我获得了date1calc和date2calc的正确值,但它将dateValue显示为“0” 代码如下: var date1calc = singleDate.difference(dateNow).inDa
var date1calc = singleDate.difference(dateNow).inDays;
var date2calc = singleDate.difference(startSingleDate).inDays;
var dateValue = date1calc ~/ date2calc;
当我打印出所有三个的值时,它显示:
date1calc = 140
date2calc = 270
dateValue = 0
为什么dateValue显示为“0”而不是“0.5185”
提前谢谢
****更新****
感谢edbond-修复了我的问题,并且控制台正确地将dateValue显示为0.5185xxxxxxxx
但这给我留下了另一个问题,即“double”不是“int”类型的子类型
为了解决这个问题——万一有人偶然发现了这个问题的答案——我找到了另一个解决方案,将双精度转换为整数:
double x = dateValue;
int a = x.toInt();
var dateValue2 = a;
然后在我的代码的其余部分调用“dateValue2”,而不是“dateValue2”,它就像一个符咒
我不能说这是做这件事的“最好”方法,但它对我很有效。您使用的是整数除法~/而不是浮点除法/
void main(){
var date1calc=140;
var date2calc=270;
打印(date1calc/date2calc);
}
打印修复控制台输出的
0.5185185
-谢谢。。。。虽然在控制台中显示“type'double'不是type'int'的子类型”,但它触发了一个单独的错误…..我正在尝试进一步研究这个问题