| 포맷 | 역할 |
|---|---|
| %n | 줄바꿈 |
| %s | Strinf 형식으로 출력, %12s 이렇게 입력하면 입력한 숫자만큼 공간을 할당 |
| %d | integer 형식으로 출력, %,d 이렇게 하면 천의 자리에 따라 ,를 찍어줌 |
| %f | float 형식으로 출력, %.2f 소수점 둘째자리까지 표현, %10.2f 10만큼 공간할당, %10f, %-10f 양수 왼쪽 정렬, 음수 오른쪽 정렬 |
| %t | date, time 형식으로 출력, %tH(시간), %tM(분), %tS(초), %tA(요일), %tB(달), %tY(년)으로 입력, 날짜를 여러번 쓰기 불편하므로 1$로 입력하면 한번에 적을 수 있음. ex)%1$%tA, %1$%tB, %1$%tY, date 한번만 입력할 것 |
| %o | 8진수 integer 형식으로 출력 |
| %x | 16진수 integer 형식으로 출력 |
| %b | boolean 형식으로 출력 |
| %e | 지수형식으로 출력 |
문자들이나 기호들을 컴퓨터 프로그램들이 읽을 수 있는 코드로 변환하는 작업
아스키코드 (ASCII - American Standard Code for Information Interchange) : null->0x00, A -> 65, a -> 97
UTF-8 (Universial Coded Character Set + Transformation Format) : 0x0000, \u0000
자바에서 예약어는 모두 소문자로 되어있으며
null -> 어떤 값이 들어있는지 모른다. 어떤 처리를 할 수 없음.
"", '' -> 빈문자열, null과는 다르다.
내가 갖고 있는 형을 다른 자료형으로 변환함.
기본자료형에 대한 형변환
1. 묵시적 형변환 (암묵적 형변환, 업캐스팅) :
코드
// [부호 (1bit) + 정수 (63bit) = 64bit = 8byte]
// -2의 63승 ~ 0 ~(2의 63승 - 1)
long ll = 999999999999999999L;
// 값 손실 발행
// [부동소수점방식: 부호 (1bit) + 지수 (8bit) + 가수 (23bit) = 32bit = 4byte]
// -3.4 * 10의 38승 ~ 3.4*10의 38승
System.out.println(ll);
f = ll;
System.out.println(f);
// 값 손실 발생
// [부동소수점방식 : 부호(1bit) + 지수(11bit) + 가수(52bit) = 64bit = 8byte]
//-1.7*10의 308승 ~ 1.7 * 10의 308승
d = ll;
System.out.println(d);
결과

내가 입력한 값과 다른 값이 출력된다 ---> 이것이 값 손실