2009-10-07 2 views
2

나는 합계 BigDecimals의 목록을 가지고있다. 연결하려는 String이 String이라면 객체 작성을 줄이기 위해 StringBuilder를 사용합니다. BigDecimal과 비슷한 것이 있습니까? 아니면 그것에 대해 걱정하지 않아도 될까요? 노력을 기울일 가치가있는 BigDecimal 생성의 최적화가 무엇입니까?BigDecimal을위한 StringBuilder의 아날로그

BigDecimal result = BigDecimal.ZERO; 
for (CashReportElement element : getReportElementSet()) { 
    if (element.getCurrencyCode().equals(currencyCode)) { 
     result = result.add(element.getSum()); 
    } 
} 
return result; 
+2

MutableBigDecimal은 Commons Lang 3.0 (https://issues.apache.org/jira/browse/LANG-276)에 대한 수정으로 표시되지만 대부분의 Commons 프로젝트와 마찬가지로 활동이 완전히 중단 된 것 같습니다. – skaffman

답변

8

Java SE에는 이러한 아날로그가 없습니다.

그리고 질문에

경우는 거기에 노력을 가하고 가치 :이 코드 이 성능 병목으로 입증 된 경우이 에 보일 것입니다.

7

여기 도널드 크 누스를 인용 것 :

는 "우리는 시간의 약 97 %를 말하고, 작은 효율성에 대해 잊지해야합니다. 조기 최적화는 모든 악의 루트입니다"

측정 할 수있는 (!) 문제가 발생할 때까지 걱정하지 마십시오. BigDecimal 성능에 대한 전문가는 아니지만 문자열 연결 중에 수행되는 char [] 복사는 훨씬 큰 오버 헤드입니다.