不同数据类型的数学运算是否不同?
Are mathematical operations different for different data types?
为什么在第一行中 sevenTwelfths 的计算结果为预期答案 (0.5833),而 threeTwentySixths 的计算结果为零?我假设由于数据类型是双精度数,所以将 3 除以 26 的运算将是一个小数,但看起来好像它作为整数运算进行运算,然后将答案转换为双精度数并将其存储在 threeTwentySixths 中。
double sevenTwelfths = ((double) 7 / 12);
double threeTwentySixths = 3 / 26;
双七十二 = ((双) 7 / 12);
在第一行中,这称为类型转换,这意味着您正在将答案转换为双精度
int sevenTwelfths=((int)7/12));
这意味着在除以 7/12 之后,将 anser 转换为 int 或将类型转换为 int
为什么在第一行中 sevenTwelfths 的计算结果为预期答案 (0.5833),而 threeTwentySixths 的计算结果为零?我假设由于数据类型是双精度数,所以将 3 除以 26 的运算将是一个小数,但看起来好像它作为整数运算进行运算,然后将答案转换为双精度数并将其存储在 threeTwentySixths 中。
double sevenTwelfths = ((double) 7 / 12);
double threeTwentySixths = 3 / 26;
双七十二 = ((双) 7 / 12);
在第一行中,这称为类型转换,这意味着您正在将答案转换为双精度
int sevenTwelfths=((int)7/12)); 这意味着在除以 7/12 之后,将 anser 转换为 int 或将类型转换为 int