Java 四舍五入双值 取整问题
比如说Java 四舍五入双值 取整问题,java,Java,比如说 598.59 ya 591.45转换为600 541.0将转换为550 541.59改为550 只需检查最后2位,忽略 十进制值。如果最后2位在 在11-19之间,如果 21-29然后将转换为30,依此类推。 那么我能为此做些什么呢。 我需要你的帮助 提前谢谢……我只是在猜你的意思,但是假设你想四舍五入到最近的n,你可以做以下事情 double d = Math.round(d / n) * n; e、 g.如果n=50 double d = Math.round(d / 50) *
提前谢谢……我只是在猜你的意思,但是假设你想四舍五入到最近的n,你可以做以下事情
double d = Math.round(d / n) * n;
e、 g.如果n=50
double d = Math.round(d / 50) * 50;
我只是在猜测你的意思,但是假设你想四舍五入到最接近的n,你可以做下面的事情
double d = Math.round(d / n) * n;
e、 g.如果n=50
double d = Math.round(d / 50) * 50;
好的,你可以上数学课。像这样:
Math.floor(myNumber); //541.59 -> 541, returns double
但在这种情况下,您必须定义舍入的“限制”。这门课的目的是什么?好的,你可以上数学课。像这样:
Math.floor(myNumber); //541.59 -> 541, returns double
但在这种情况下,您必须定义舍入的“限制”。这样做的目的是什么?使用[]:-
静态双圆(双x,整数刻度)
或-
静态双圆(双x,整数刻度,整数圆整方法)
MathUtils.round(598.59, -1); // 600.0
MathUtils.round(591.45, -1, BigDecimal.ROUND_CEILING); // 600.0
MathUtils.round(541.0, -1, BigDecimal.ROUND_CEILING); // 550.0
MathUtils.round(541.59, -1, BigDecimal.ROUND_CEILING); // 550.0
有关更新的信息 只需检查最后两位数字,忽略 十进制值。如果最后2位在 在11-19之间,如果 21-29将转化为30,如此类推 在 强制转换为双精度以确保使用
轮(双x,…)
,而不是轮(浮动x,…)
使用[]:-
静态双圆(双x,整数刻度)
或-
静态双圆(双x,整数刻度,整数圆整方法)
MathUtils.round(598.59, -1); // 600.0
MathUtils.round(591.45, -1, BigDecimal.ROUND_CEILING); // 600.0
MathUtils.round(541.0, -1, BigDecimal.ROUND_CEILING); // 550.0
MathUtils.round(541.59, -1, BigDecimal.ROUND_CEILING); // 550.0
有关更新的信息 只需检查最后两位数字,忽略 十进制值。如果最后2位在 在11-19之间,如果 21-29将转化为30,如此类推 在 强制转换为双精度,以确保使用了
轮(双精度x,…)
,而不是轮(浮点x,…)
public class RoundToTwodecimalPlaces {
public static double roundTo2Places(double value) {
assert value >= Long.MIN_VALUE / 100 && value <= Long.MAX_VALUE / 100;
long digits = (long) (value < 0 ? value * 100 - 0.5 : value * 100 + 0.5);
return (double) digits / 100;
}
private RoundToTwodecimalPlaces() {
}
}
public class RoundToTwodecimalPlaces{
公共静态双圆形2个位置(双值){
例如,断言值>=Long.MIN\u值/100&&value
public class RoundToTwodecimalPlaces {
public static double roundTo2Places(double value) {
assert value >= Long.MIN_VALUE / 100 && value <= Long.MAX_VALUE / 100;
long digits = (long) (value < 0 ? value * 100 - 0.5 : value * 100 + 0.5);
return (double) digits / 100;
}
private RoundToTwodecimalPlaces() {
}
}
public class RoundToTwodecimalPlaces{
公共静态双圆形2个位置(双值){
断言值>=Long.MIN\u值/100&&value
至于我:
1.除以10
59.859
54.10
54.159
2.四舍五入至最接近的整数,3.乘以10。
收到
600
550
550
至于我:
1.除以10
59.859
54.10
54.159
2.四舍五入至最接近的整数,3.乘以10。
收到
600
550
550公共类圆形停车场{
public static double roundTo2Places(double value) {
assert value >= Long.MIN_VALUE / 100 && value <= Long.MAX_VALUE / 100;
long digits = (long) (value < 0 ? value * 100 - 0.5 : value * 100 + 0.5);
return (double) digits / 100;
}
private RoundToTwodecimalPlaces() {
}
公共静态双舍入2位(双值){
assert value>=Long.MIN\u value/100&&value公共类RoundToTwodecimalPlaces{
public static double roundTo2Places(double value) {
assert value >= Long.MIN_VALUE / 100 && value <= Long.MAX_VALUE / 100;
long digits = (long) (value < 0 ? value * 100 - 0.5 : value * 100 + 0.5);
return (double) digits / 100;
}
private RoundToTwodecimalPlaces() {
}
公共静态双舍入2位(双值){
assert value>=Long.MIN\u value/100&&value您尝试了什么?您是否查阅了标准Java API以找到实现此目的的方法?我在这里看不到任何模式。将数字除以100,再加上0.99,然后截断。(如果您想将其四舍五入到下一个10)你尝试过什么?你看过标准的Java API了吗?我在这里没有看到一个模式。将数字除以100,加上0.99,然后截断。(如果你想把数字四舍五入到下一个10)谢谢,伙计…但是我需要不同的。比如541.59而不是我使用544.0 ya 548.5689,现在这些将被转换550…只需检查最后两个数字关于最后两个数字它将被转换。谢谢,伙计…但是我需要不同的。比如541.59而不是我使用544.0 ya 548.5689,现在这些将被转换550…只需检查最后两个数字关于它将转换的最后两位数字。此答案似乎与此重复。此答案似乎与此重复。