Java 如何将一个double和一个int相乘,并在单个station中转换为int

Java 如何将一个double和一个int相乘,并在单个station中转换为int,java,Java,我正试图在没有任何运气的情况下完成以下任务 int a = 1; double b = 0.5; int myInteger = (int) a*b; 您已将b声明为整数 试试这个: int a = 1; double b = 0.5d; int myInteger = a*b; 你的代码正确吗?有两个int原语,没有double。按照您编写的方式,b变量将被截断为0,因为小数点后的所有内容都将被丢弃 我猜这就是你想要的。使用parens强制乘法,然后强制转换。如果没有围绕a*b的参数,

我正试图在没有任何运气的情况下完成以下任务

int a = 1;
double b = 0.5;

int myInteger = (int) a*b; 

您已将
b
声明为整数

试试这个:

int a = 1;
double b = 0.5d;
int myInteger = a*b;

你的代码正确吗?有两个int原语,没有double。按照您编写的方式,b变量将被截断为0,因为小数点后的所有内容都将被丢弃

我猜这就是你想要的。使用parens强制乘法,然后强制转换。如果没有围绕a*b的参数,编译器将抛出警告/错误,因为截断会导致精度损失

int a = 2;
double b = 2.5;

int result = (int) (a*b);
System.out.println(result);

结果是5

尝试将
b
打印到控制台,您需要按照控制台上的说明进行操作。除了不做它没有要求的事情之外,没有别的诀窍。它要求一个
double
和一个
int
后缀
d
当然是可选的,因为double是。是的,完全可选。习惯的力量适合我自己喜欢的风格。