为什么 calcGPA 一直说它等于 NaN?我确保它不是未定义的。
double gradesMultiplied = ((quantityA * 4.00) + (quantityAMin * 3.70) + (quantityBPlu * 3.30) + (quantityB * 3.00) + (quantityBMin * 2.70) + (quantityCPlu * 2.30) + (quantityC * 2.00) + (quantityCMin * 1.70) + (quantityDPlu * 1.30) + quantityD + (quantityDMin * 0.70));
double gradesAdded = (quantityA + quantityAMin + quantityBPlu + quantityB + quantityBMin + quantityCPlu + quantityC + quantityCMin + quantityDPlu + quantityD + quantityDMin + quantityF);
double calcGPA = gradesMultiplied / gradesAdded;
最佳答案
NaN is Not a Number ,尝试在开始时将所有值显式转换为数字。
同时查看this你有可能将零除以零吗?
"NaN" stands for "not a number". "Nan" is produced if a floating point operation has some input parameters that cause the operation to produce some undefined result. For example, 0.0 divided by 0.0 is arithmetically undefined. Taking the square root of a negative number is also undefined.
关于java - Android 应用程序返回 NaN,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36755319/