在 Java 中没有直接提供 log₂(x) 方法 ,但可以用换底公式轻松实现:log2(x)=ln(2)ln(x)=log10(2)log10(x)
Java 标准库 Math 类提供了:
Math.log(x):自然对数(ln,以 e 为底)Math.log10(x):以 10 为底的对数
String 格式化将浮点数转为保留指定位数的小数
double num = 3.1415926;
String result = String.format("%.4f", num);
System.out.println(result); // 3.1416(四舍五入)
精确计算场景:使用 BigDecimal
import java.math.BigDecimal;
import java.math.RoundingMode;
double num = 3.1415926;
BigDecimal bd = new BigDecimal(num).setScale(4, RoundingMode.HALF_UP);
double res = bd.doubleValue();
输出用:DecimalFormat
import java.text.DecimalFormat;
double num = 3.1415926;
DecimalFormat df = new DecimalFormat("#.0000");
String res = df.format(num);