在 Java 中,可以使用 BigDecimal 類來進行四舍五入操作,以下是一個優化的四舍五入代碼示例:
import java.math.BigDecimal;
import java.math.RoundingMode;
public class RoundExample {
public static double round(double value, int places) {
if (places < 0) throw new IllegalArgumentException();
BigDecimal bd = BigDecimal.valueOf(value);
bd = bd.setScale(places, RoundingMode.HALF_UP);
return bd.doubleValue();
}
public static void main(String[] args) {
double value = 3.14159;
int places = 2;
double roundedValue = round(value, places);
System.out.println("Rounded value: " + roundedValue);
}
}
在上面的代碼中,我們定義了一個 round
方法,接受一個 double 類型的值和要保留的小數位數作為參數,并使用 BigDecimal 類的 setScale
方法來進行四舍五入操作,最后將結果轉換為 double 類型并返回。可以通過調用這個方法來對任意 double 值進行四舍五入操作。