Back_end/JAVA

JAVA - 기본 API(formatting, Object)

hyeon1016 2024. 9. 29. 04:35

formatting

 

데이터를 출력할 때의 형식을 지정하는 클래스다.

 

주로 날짜, 숫자, 문자열 등을 특정 형식으로 변환하여 가독성을 높이는 데 사용된다.

 

ex) 금액 뒤에 $같은 통화 기호를 붙이는 형식을 만들 수 있다.

 

DecimalFormat

 

숫자를 형식화하는 클래스

기호 의미
# 해당 자리에 숫자가 있으면 출력
0 해당 자리에 숫자가 없으면 0으로 채워서 출력
. 소수 부분을 나타낸다.(숫자가 없으면 생략)
- 음수일 경우 앞에 붙는다.
, 콤마를 붙여 출력하며, 숫자를 그룹화할 때 사용한다.
E 과학적 표기법을 나타내는 기호
% 숫자를 백분율로 변환 (0.25  ㅡ> 25%)

 

*0을 많이 사용한다.

 

사용 예시

String[] pattern = {
    "000.000",
    "###.###"
};

double[] a = {3.2, 1.11, 12.35};

DecimalFormat df;

for(int i=0; i<pattern.length; i++) {
    df = new DecimalFormat(pattern[i]);
    for(int j=0; j<a.length; j++) {
        System.out.println(df.format(a[j]));
    }
}

 

1. String타입 배열을 생성하여 요소로 형식을 만들어준다.(패턴)

2. double타입의 배열을 생성하여 요소를 입력한다.(패턴 적용 대상)

3. DecimalFormat 클래스를 선언만 한다.

4. for문을 사용해 반복한다.

 

 

SimpleDateFormat

 

날짜(Date, Calendar)를 형식화하는 클래스

 

다른 나라에 맞는 시간 형식으로 바꾸기 위해 사용한다.

 

기호 의미
y
M
d
E 요일
a 오전/오후
H 시간
m
s

 

사용 예시

Date day = new Date(); 
String pattern = "yyyy-MM-dd";

SimpleDateFormat p1 = new SimpleDateFormat(pattern);

System.out.println(p1.format(day)); ==> ex)2024-09-24

 

1. Date 클래스를 생성한다.

2. String타입의 변수에 패턴을 저장한다.

3. SimpleDateFormat 클래스를 생성하고 생성자의 파라미터로 패턴을 입럭한다.(참조변수 p1)

4. println()으로 p1.format(day)를 출력, 지정된 양식으로 날짜가 출력된다.

 

 

Object

 

모든 클래스의 조상 클래스

JAVA의 모든 클래스는 Object를 상속받았다.

 

Object클래스는 멤버 변수 가없으며 메서드만 존재한다.

 

메서드

반환타입 메서드 설명
protected Object clone() 객체의 복사본을 반환
boolean equals(Object obj) obj와 같은 객체인지 아닌지 boolean값으로 반환
protected void finalize() 객체가 소멸할 때 호출
Class<?> getClass() 클래스의 정보를 담고 있는 Class객체를 반환
int hashCode() 해시코드를 반환(특수문자포함)
void notify() 대기중인 하나의 스레드를 깨운다
void notifyAll() 대기중인 모든 스레드를 깨운다
String toString() 객체의 정보를 문자열로 변환
void wait() 현재 스레드를 멈추고 대기
void wait(long timeout) timeout만큼 스레드를 멈추고 대기
void wait(long timeout, int nanos) 실제로 일어난 시간만큼 스레드를 멈추고 대기