int dollars = (int) amount; int cents = (int) ((amount - dollars) * 100); int为什么要有()
时间: 2023-08-31 16:40:41 浏览: 50
### 回答1:
在这里,括号是用来进行强制类型转换的语法。因为amount实际上是一个double类型的变量,而dollars和cents需要被声明为整数类型(int),所以必须对amount进行强制类型转换来消除精度上的偏差。因此,这里使用括号将double类型的amount强制转换为int类型的dollars和cents。
### 回答2:
在Java中,小括号()通常用于类型转换(Casting)。在这段代码中,int是一个数据类型,而(amount - dollars)和(amount - dollars) * 100是表达式。小括号的作用是将表达式的结果强制转换为int类型。
在本段代码中,amount表示一个浮点数的金额,而dollars和cents是两个整数变量,用于存储将金额拆分为整数和小数部分后的结果。由于dollar和cents都是整数类型,而amount是一个浮点数类型,所以需要进行类型转换以便将浮点数的金额分配给整数变量。
首先,将amount强制转换为整数,得到的结果将是金额去除小数部分后的整数部分。这被赋值给变量dollars,以便用于存储整数部分的金额。
然后,计算(amount - dollars) * 100,这将得到小数部分的金额乘以100后的结果。再次使用小括号将其强制转换为整数,并将结果赋值给变量cents,以便用于存储小数部分的金额。
在这段代码中,小括号的作用是将表达式的结果转换为int类型,以适应整数变量的要求。
### 回答3:
在这段代码中,把`amount`类型转换为`int`类型可以通过`(int)`来实现。这里使用括号的作用是强制转换。强制转换的作用是改变一个变量的数据类型,使其符合当前所需的类型。
在这个例子中,`amount`是一个浮点型变量,而`dollars`和`cents`是整数型变量。强制转换的目的是将浮点型的`amount`转换为整数型的`dollars`和`cents`。
`int dollars = (int) amount;`代码行中,`(int) amount`将浮点型的`amount`转换为整数型,并将结果赋值给`dollars`变量。
同样地,在`int cents = (int) ((amount - dollars) * 100);`代码行中,`(amount - dollars)`得到的是小数部分,将其乘以100后再进行强制转换为整数型,并将结果赋值给`cents`变量。
使用强制转换的目的是去掉小数部分,只保留整数部分,以便将金额表示为以美元为单位的整数和以美分为单位的整数。