UniCode
[이것이 자바다]CH02.변수와 타입(확인문제풀이) 본문
1. 자바에서 변수에 대한 설명 중 틀린 것은 무엇입니까?
① 변수는 하나의 값만 저장할 수 있다.
② 변수는 선언 시에 사용한 타입의 값만 저장할 수 있다.
③ 변수는 변수가 선언된 중괄호( { } ) 안에서만 사용 가능하다.
④ 변수는 초기값이 저장되지 않은 상태에서 읽을 수 있다
☞ ④ 변수는 초기화가 되어야 읽을 수가 있고, 초기화되지 않은 변수는 읽을 수가 없다.
2. 변수 이름으로 사용 가능한 것을 모두 선택하세요
① modelName
② class
③ 6hour
④ $value
⑤ _age
⑥ int
☞ ① modelName, ④ $value, ⑤ _age
변수 명명 규칙
- 첫 번째 글자는 문자이거나 '$', '_' 이어야 하고 숫자로 시작할 수 없다.
- 영어 대소문자가 구분된다.
- (관례)첫 문자는 영어 소문자로 시작, 다른 단어가 붙을 경우 첫 문자를 대문자로 한다.
- 문자 수(길이)의 제한이 없다.
- 자바 예약어는 사용할 수 없다.
3. 다음 표의 빈칸에 자바의 기본 타입(Primitive Type) 8개를 적어보세요.
크기 / 타입 | 1byte | 2byte | 4byte | 8byte |
정수타입 | ( ① ) | ( ② ) ( ③ ) |
( ④ ) | ( ⑤ ) |
실수타입 | ( ⑥ ) | ( ⑦ ) | ||
논리타입 | ( ⑧ ) |
☞ ① byte ② char ③ short ④ int ⑤ long ⑥ float ⑦ double ⑧boolean
4. 다음 코드에서 타입, 변수 이름, 리터럴에 해당하는 것을 적어 보세요.
int age; age = 10; double price = 3.14; |
타입 : ( ) , ( )
변수 이름 : ( ) , ( )
리터럴 : ( ) , ( )
☞ 타입 : int, double , 변수 이름 : age, price , 리터럴 : 10, 3.14
5. 자동 타입 변환에 대한 내용입니다. 컴파일 에러가 발생하는 것은 무엇입니까?
byte byteValue = 10; char charValue = 'A'; |
① int intValue = byteValue;
② int intValue = charValue;
③ short shortValue = charValue;
④ double doubleValue = byteValue;
☞ ③ short shortValue = charValue;
큰 크기 타입에 작은 크기 타입의 변수를 저장할 경우 자동 타입 변환이 가능하나, short형에 char형의 범위가 포함되지않으므로 에러가 발생한다.(short범위:-2^15 ~ 2^15 -1 / char범위 : 0~ 2^16 -1)
6. 강제 타입 변환(Casting)에 대한 내용입니다. 컴파일 에러가 발생하는 것은 무엇입니까?
int intValue = 10; char charValue = 'A'; double doubleValue = 5.7; String strValue = "A"; |
① double var = (doble) intValue;
② byte var = (byte) intValue;
③ int var = (int) doubleValue;
④ char var = (char) strValue;
☞ char var = (char) strValue; 문자열은 char형으로 강제 타입 변환이 불가능하다.
7. 변수를 잘못 초기화한 것은 무엇입니까?
① int var1 = 10;
② long var2 = 1000000000L;
③ char var3 = ''; //작은 따옴표 두 개가 붙어있음
④ double var4 = 10;
⑤ float var5 = 10;
☞ ③ char var3 = ''; //작은 따옴표 두 개가 붙어있음
char 타입 변수에 문자를 대입하지 않고 단순 초기화가 목적이라면 공백(유니코드:32) 하나를 포함해서 초기화해야함.
8. 연산식에서의 타입 변환 내용입니다. 컴파일 에러가 생기는 것은 무엇입니까?
byte byteValue = 10; float floatValue = 2.5F; double doubleValue = 2.5; |
① byte result = byteValue + byteValue
② int result = 5 + byteValue
③ float result = 5 + floatValue
④ double result = 5 + doubleValue;
☞ ① byte result = byteValue + byteValue
자바는 정수 연산일 경우 int 타입을 기본으로 한다. 크기가 4byte보다 작은 타입(byte, char, short)은 4byte인 int타입으로 변환된 후 연산이 수행되어야 한다. 또한 연산의 결과도 int 타입이 된다
'이것이 자바다' 카테고리의 다른 글
[이것이 자바다]CH06.클래스(확인문제풀이)-① (0) | 2021.03.28 |
---|---|
[이것이 자바다]CH05.참조타입(확인문제풀이) (0) | 2021.03.23 |
[이것이 자바다]CH04.조건문과 반복문(확인문제풀이) (0) | 2021.03.21 |
[이것이 자바다]CH03.연산자(확인문제풀이) (0) | 2021.03.21 |
[이것이 자바다]CH01.자바 시작하기(확인문제풀이) (0) | 2021.03.17 |