2-1
| 1 byte | 2 byte | 4 byte | 8 byte | |
| 논리형 | boolean | |||
| 문자형 | char | |||
| 정수형 | byte | short | int | long |
| 실수형 | float | double |
2-2
다음중 키워드가 아닌 것은?
① if
② True
③ NULL
④ Class
⑤ System
Ans) 4번, 5번
왜냐하면 키워드가 아니고 클래스 이름이기 때문
2-3
char 타입의 변수에 저장될 수 있는 값의 범위는? (10진수로)
Ans) -32768 ~ +32767
왜냐하면 2byte 타입은 16bit로 표현되는데, 첫번째 부호비트를 제외하면 15bit로 표현되고, 따라서 $- 2^{15} $ ~ $ 2^{15}-1$로 표현되기 때문
2-4
다음 중 변수를 잘못 초기화 한것은? (모두)
① byte b = 256;
② char c = '';
③ char answer = 'no';
④ float f = 3.14
⑤ double d = 1.4e3f;
Ans) 1, 2, 3, 4
1: byte는 1byte(8 bit)자료형이고, 부호 비트 1개를 제외하고 양수는 $2^7 - 1$까지만 저장이 가능하기 때문에 256은 저장이 불가하다.
2. 빈 단일 문자 ''는 허용되지 않음
3. char 형에는 단일 문자만 허용
4. 실수 리터럴은 기본적으로 double형이기에, float로 정의하려면 접미사 f를 붙여야 함. 오타일 수도 있으나, 세미콜론(;)도 빠져있음
5. 1.4e3f는 float형인데, float에서 double로는 자동 형변환이 가능하다. 따라서 옳음
2-5
다음의 문장에서 리터럴, 변수, 상수, 키워드를 적으시오.
int i = 100;
long l = 100L;
final float PI = 3.14f;
Ans)
리터럴: 100, 100L, 3.14f
키워드: int, long, final, float
변수: i, L
상수: PI
2-6
다음 중 기본형이 아닌 것은?
① int
② Byte
③ double
④ boolean
Ans) Byte
Byte가 아니라 byte임.
2-7
다음 문장들의 출력 결과를 적으세요. 오류가 있는 문장의 경우, 괄호 안에 '오류'라고 적으시오.
① System.out.println("1" + "2") $\to$ ( 12 )
② System.out.println(true + "") $\to$ ( true )
③ System.out.println('A' + 'B') $\to$ ( 131 )
④ System.out.println('1' + 2) $\to$ ( 51 )
⑤ System.out.println('1' + '2') $\to$ ( 99 )
⑥ System.out.println('J' + "ava") $\to$ ( Java )
⑦ System.out.println(true + null) $\to$ ( 오류 )
Ans) 문제가 좀 급발진인데, char형은 Java 내부적으로 유니코드 정수값으로 바뀌어서 저장된다. +연산자가 숫자 연산에 사용되면 char는 자동으로 int로 변환된다.
1: 문자열끼리 합이므로 단순 연결
2: true가 문자열 "true"로 바뀐다
3: 'A'의 유니코드 65와, 'B'의 유니코드 66의 합인 131
4: '1'의 유니코드 49와, 정수 2의 합인 51
5: '1'의 유니코드 49와, '2'의 유니코드 50의 합인 99
6: 하나라도 문자열이 포함되면, +가 숫자 연산이 아니라 문자열 연결 연산이 된다. 'J'가 "J"로 변환되고 연결된다,
7: bool은 null이랑 못더한다
2-8
public class Main {
public static void main(String[] args) {
int x = 1;
int y = 2;
int z = 3;
/*
int temp = x;
x = y;
y = z;
z = temp;
*/
System.out.println("x=" + x);
System.out.println("y=" + y);
System.out.println("z=" + z);
}
}'Java' 카테고리의 다른 글
| [Java] Java의 정석(기초편) 연습문제 풀이Chapter05 (0) | 2026.01.10 |
|---|---|
| [Java] Java의 정석(기초편) 연습문제 풀이Chapter04 (0) | 2026.01.09 |
| [Java] Java의 정석(기초편) 연습문제 풀이Chapter03 (0) | 2026.01.08 |