1. 다음의 프로그램은 잘못된 프로그램입니다. 어떤 부분이 잘못되었는지 찾고, 잘못된 이유를 설명하십시오.
byte 는 1 바이트 짜리 타입이라 [ -128, 127 ] 의 범위를 표현한다. 그런데 for 문 안에서 cnt 가 127 이 넘어 가게 된다. byte 가 아니라 int 를 사용해야만 한다.
2. 다음의 리터럴들이 각각 어떤 타입인지 괄호 안에 쓰십시오.
a) "도" ( )
b) 100 ( )
c) 0x01ABf ( )
d) 12e2 ( )
e) false ( )
f) '\123' ( )
a) "도" ( string )
b) 100 ( int )
c) 0x01ABf ( float )
d) 12e2 ( int )
e) false ( boolean )
f) '\123' ( char )
3. 다음 중 잘못된 리터럴을 고르고 어디가 잘못되었는지 설명하십시오.
"" 0.0 '\r\n' .5e100f 0xABCDEFABCDEF 0x12.5e2 "단가:\10000" TRUE 1e-100f
'\r\n' : 2 개의 문자가 들어 있는 문자열이므로 "\r\n" 이라고 해야 한다.
.5e100f : float 범위를 넘어 선다. f 를 빼야 한다.
0xABCDEFABCDEF : 4 바이트가 넘어가므로 int 에 넣을 수 없다. 만약 long 에 넣고자 한다면 0xABCDEFABCDEFL 이라고 해야 한다.
0x12.5e2 : 16 진수이므로 e 를 쓰면 안 된다. 0x12.5p2 라고 해야 한다.
"단가:\10000" : \ 를 문자열 안에 쓰면 escape sequence 가 된다. 그러므로 "단가:\\10000" 이라고 해야 한다.
TRUE : true 라고 해야 한다.
1e-100f : float 범위를 넘어 선다. f 를 빼야 한다.
'Programming > 뇌를 자극하는 Java 프로그래밍' 카테고리의 다른 글
[ 뇌를 자극하는 Java 프로그래밍 ] 4장, 이것만은 알고 갑시다 (0) | 2013.04.09 |
---|---|
[ 뇌를 자극하는 Java 프로그래밍 ] 4장, Vitamin Quiz, 넓은 범위로의 캐스트 연산은 안전할까? (0) | 2013.04.09 |
[ 뇌를 자극하는 Java 프로그래밍 ] 4장, Vitamin Quiz, 조건 연산자와 증가 연산자 (0) | 2013.04.09 |
[ 뇌를 자극하는 Java 프로그래밍 ] 4장, Excercise 4-2 (0) | 2013.04.09 |
[ 뇌를 자극하는 Java 프로그래밍 ] 4장, Excercise 4-1 (0) | 2013.04.09 |
[ 뇌를 자극하는 Java 프로그래밍 ] 3장, Excercise 3-3 (0) | 2013.04.08 |
[ 뇌를 자극하는 Java 프로그래밍 ] 3장, Excercise 3-2 (0) | 2013.04.08 |
[ 뇌를 자극하는 Java 프로그래밍 ] 3장, Vitamin Quiz, 2진 소수 (0) | 2013.04.08 |
[ 뇌를 자극하는 Java 프로그래밍 ] 3장, Excercise 3-1 (0) | 2013.04.08 |
[ 뇌를 자극하는 Java 프로그래밍 ] 2장, 이것만은 알고 갑시다 (0) | 2013.04.07 |