JAVA 금액 format

KSOJIN·2023년 6월 16일
0

taxcare

목록 보기
6/10
post-thumbnail

DecimalFormat

숫자 타입만 가능 long > String

DecimalFormat df = new DecimalFormat("#,###");
System.out.println(df.format(2000000)); // "2,000,000"

문자열도 가능하도록 함수로 응용하면

public String getAmount(String value) {
	// "" 인경우 parseLong에서 에러
	if(value.equals("") || value.equals("0")) return "";
	DecimalFormat df = new DecimalFormat("#,###"); 
	value = df.format(Long.parseLong(value));
	return value;
}

반대로 사용자입력으로 콤마가 찍힌 금액을 받아서 DB에 저장하거나 계산에 활용할 때는 Long으로 변환해야 하기 때문에 세트로 다시 변환하는 함수를 만들어 주는 것이 좋다.

if(!value.isEmpty()) { // null은 잡을 수 없음 ""만 가능
	if(value.contains(",")) value = value.replace(",", "");
} //콤마제거하고 long으로 변환

🐥금액뿐만 아니라 주민번호나 사업자번호 처럼 자주 쓰는 포맷을 공통 함수로 만들면 편리하게 사용할 수 있다.

0개의 댓글