0
我已經設法讓我的代碼工作,但覺得有更好的方法來編寫類似的東西,任何提示或錯誤指出?如何更優雅地編寫代碼? (Factorial,BigDecimals,除以BigIntegers)
這裏是我的代碼:
public static void main(String[] args) {
DecimalFormat df = new DecimalFormat("0.##E0");
BigDecimal a;
BigInteger fact;
int n=10;
int x=3;
for (int i=1; i<=n; i++){
fact=BigInteger.valueOf(1);
for (int j=1; j<=Math.pow(i,2)+1; j++){
fact=fact.multiply(BigInteger.valueOf(j));
}
a=BigDecimal.valueOf((Math.pow(-1, i+1)*Math.log(i*x))/i).divide(new BigDecimal(fact), 500, BigDecimal.ROUND_HALF_EVEN);
System.out.println(df.format(a));
}
}
我認爲這屬於對http://codereview.stackexchange.com/ – Koekje
是。我可以說的關於這些代碼的大部分內容都是「風格」問題,這會使得這個(可以說)是一個需要「基於意見」答案的問題。 –
另一個答案是,就使用Java語言結構而言,沒有實質上的「更好的方法」。 (但這也是一個意見。) –