我想将W输入到int数组中。我怎样才能做到这一点?对不起,这个糟糕的问题或英语。将double转换为int
public void setX (int Y , double W)
{
array[Y] = W;
}
我想将W输入到int数组中。我怎样才能做到这一点?对不起,这个糟糕的问题或英语。将double转换为int
public void setX (int Y , double W)
{
array[Y] = W;
}
如果你感到快乐截断向0 - 并获得int.MIN_VALUE
或int.MAX_VALUE
如果该值超出int
范围的 - 你可以只投:
array[Y] = (int) W;
如果你不是满意这些警告,你应该重新评估你的设计 - 想想你想要发生,例如如果W
是15.25
。如果您需要保留所有原始信息,则应使用double[]
而不是int[]
。
(你也应该重新审视你的参数名称,如果这些是你的真正名。阅读上的Java命名约定。)
你可以尝试四舍五入数值'array [Y] =(int)Math.round(W);' –
W将会像7.5或者有十进制的东西,而不是四舍五入。我该怎么办?请指教。很多谢谢 –
@WillieHii:那么如果你的数组是整数,它怎么能不能被舍入?之后你想要数组元素的值是什么?它不能是7.5 ... –
的array[Y]
应delcared是前你ASIGN和Y将小于这个数组的大小。
array[Y] = Integer.valueOf(W + "");
上面一行将有助于
目前还不清楚你认为这是一个答案,但它没有解决问题。 –
我很抱歉让人困惑。我编辑它。 感谢您的意见 – lethanh
这仍然不会编译 - 你会期望它使用哪个'Integer.valueOf'重载? –
你会失去小数部分。 –