(抱歉,我不知道描述这个问题的最佳关键词是什么。)
主要问题是,如果我在 java 中有一个双数,比如说 25.003,我怎么知道这个数字可以写成 25003 x 10^(-3),这样我可以得到指数部分 (-3)?
我唯一想要的就是得到那个指数 (-3)。(所以我知道我可以将 25.003 乘以 1000 使其成为一个整数)有没有什么方法可以给我那个指数数?
非常感谢。
最佳答案
如果您将其视为字符串,这实际上非常简单。
private static int getExponentForNumber(double number)
{
String numberAsString = String.valueOf(number);
return numberAsString.substring(numberAsString.indexOf('.') + 1).length() * -1;
}
这只是返回“.”之后的长度。这是你的负指数。所以你真的可以像那样使用它:
int exponent = getExponentForNumber(25.003);
int basis = Integer.valueOf(String.valueOf(25.003).replace(".", ""));
String expression = "25.003 equals " + basis + "*10^" + exponent;
System.out.println(expression);
25.003 equals 25003*10^-3
关于java - 如何在 Java 中获取 10 的幂的双倍指数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52993177/