System.out.println("1"+"2") -> "12"
System.out.println(true + "") -> true
System.out.println('A'+'B') -> 131 //65+66=131
System.out.println('1'+ 2) -> 51 //49+2=51
System.out.println('1'+'2') -> 99 //49+50=99
System.out.println('J'+"ava") -> "Java" //문자열+아무타입=문자열
System.out.println(true+null) -> 오류
byte b = 10;
char ch = 'A';
int i = 100;
long l = 1000L;
a. b = (byte)i;
b. ch = (char)b;
c. short s = (short)ch;
d. float f = (float)l;
e. i = (int)ch;
답: d,e
a. byte b =256; //byte의 범위(-128~127)를 넘는 값으로 초기화 불가
b. char c =''; //반드시 한개의 문자 필요
c. char answer = 'no'; //두개이상 문자 저장 안됨
d. float f=3.14; //f가 빠지면 3.14d임,f 넣기
e. double d=1.4e3f; //double(8byte)에 float(4byte)을 넣는것으로 가능
답: a,b,c,d
a. boolean - false
b. char -'\u0000'
c. float - 0.0 //f가 빠짐
d. int - 0
e. long - 0 //l이 빠짐
f. String '' //null이 기본값
답: c,e,f
int x = 2;
int y = 5;
char c ='A'; //'A'의 문자코드는 65
sout(1 + x << 33);
sout(y >= 5 || x < 0 && x > 2);
sout(y += 10 - x++); //x가 3이 됨
sout(x+=2);
sout(!('A' <= c && c <= 'Z'));
sout('C'-c)
sout('5'-'0');
sout(c+1)
sout(++c);
sout(c++);
sout(c);
답:
6
true - 앤드연산자 먼저
13 - 증감연산자는 연산이 다 끝나고 나중에 함
5
false
2
5
66
B
B
C
int numOfApples = 123; //사과의 배수
int sizeOfBucket = 10; //바구니의 크기(바구니에 담을 수 있는 사과의 개수)
int numOfBucket = (1) //모든 사과를 담는데 필요한 바구니 수
sout("필요한 바구니의 수" + numOfBucket);
실행결과: 13
답:numOfApples/sizeOfBucket+(numOfApples%sizeOfBucket>0?1:0)
int num = 24;
sout((1));
실행결과: 6
답: ((num+10)/10*10)-num //내가 쓴 답
답안지 답: 10- num%10
또 다른 답: (num/10+1)*10- num
int fahrenheit = 100;
float celcius = ( (1) )
sout("Fahrenheit:" + fahrenheit);
sout("Celcius:" + celcius);
실행결과
Fahrenheit:100
Celcius:37.78
답:(int)((5f/9(fahre-32)100+0.5))/100f
byte a = 10;
byte b =20;
byte c = a+b; // (byte)(a+b);
char ch = 'A';
ch = ch + 2; //(char)(ch + 2);
float f = 3 / 2; //3 / 2f
long l = 3000 * 3000 * 3000;//끝 3000에 l 붙이기 3000l
float f2 = 0.1f;
double d = 0.1;
boolean result = d==f2; //(float)d==f2
sout("c="+c)
sout("ch="+ch)
sout("f="+f)
sout("l="+l)
sout("result="+result)
실행결과
c=30
ch=c
f=1.5
l=27000000000
result=true