Language/Java

[자바의 정석_예제] 연산자

simDev1234 2022. 3. 21. 12:40

class Exercise3_1 { 
	public static void main(String[] args) { 
		int x = 2; 
		int y = 5; 
		char c = 'A'; // 'A'의 문자코드는 65 
		System.out.println(1 + x << 33); 
		System.out.println(y >= 5 || x < 0 && x > 2); 
		System.out.println(y += 10 - x++); 
		System.out.println(x+=2); 
		System.out.println( !('A' <= c && c <='Z') ); 
		System.out.println('C'-c); 
		System.out.println('5'-'0'); 
		System.out.println(c+1); 
		System.out.println(++c); 
		System.out.println(c++); 
		System.out.println(c); 
	} 
}

 

더보기

6

true

13

5

false

2

5

66

B

B

C

 

class Exercise3_2 { 
	public static void main(String[] args) { 
		int numOfApples = 123; // 사과의 개수 
		int sizeOfBucket = 10; // 바구니의 크기 (바구니에 담을 수 있는 사과의 개수)
		int numOfBucket = ( /* (1) */ ) ;

		System.out.println("필요한 바구니의 수 :"+numOfBucket);
	}
}

>> 실행결과

13
더보기

[3-2] X
//나 : numOfApples/sizeOfBucket+(numOfApples%sizeOfBucket==0? 0 : 1)
답 : numOfApples/sizeOfBucket+(numOfApples%sizeOfBucket>0? 1 : 0)

 

class Exercise3_3 { 
	public static void main(String[] args) { 
		int num = 10; 
		System.out.println( /* (1) */ ); 
	} 
}

>> 실행결과

양수
더보기

[3-3]
num < 0? "음수" : "양수";

 

class Exercise3_4 { 
	public static void main(String[] args) { 
		int num = 456; 
		System.out.println( /* (1) */ ); 
	} 
}

>> 실행결과

400
더보기

[3-4]
num/100*100

 

class Exercise3_5 {
	public static void main(String[] args) {
		int num = 333;
		System.out.println( /* (1) */);
	}
}

>> 실행결과

331
더보기

[3-5]
num/10*10+1

 

class Exercise3_6 {
	public static void main(String[] args) {
		int num = 24;
		System.out.println( /* (1) */);
	}
}

>> 실행결과

6
더보기

[3-6] X
//나 : (num/10+1)*10-num
답 : 10 - num%10

 

class Exercise3_7 {
	public static void main(String[] args) { 
		int fahrenheit = 100; 
		float celcius = ( /* (1) */ );
		
		System.out.println("Fahrenheit:"+fahrenheit); 
		System.out.println("Celcius:"+celcius); 
	}
}

>> 실행결과

Fahrenheit:100
Celcius:37.78
더보기

[3-7] X
//나 : ((int)(5f/9*(fahrenheit-32)*100+0.5f))/100f
답 : (int)(5f/9*(fahrenheit-32)*100+0.5)/100f

 

class Exercise3_8 {
	public static void main(String[] args) {
		byte a = 10;
		byte b = 20;
		byte c = a + b;
		char ch = 'A';
		ch = ch + 2;
		float f = 3 / 2;
		long l = 3000 * 3000 * 3000;
		float f2 = 0.1f;
		double d = 0.1;
		boolean result = d == f2;
		System.out.println("c=" + c);
		System.out.println("ch=" + ch);
		System.out.println("f=" + f);
		System.out.println("l=" + l);
		System.out.println("result=" + result);
	}
}

>> 결과

c=30
ch=C
f=1.5
l=27000000000
result=true
더보기

[3-8]
byte c = (byte)(a + b);
ch = (char)(ch + 2);
// 나 : float f = 3f/2;

float f = 3/2f
// 나 : long l = 3000L*3000*3000;

long l = 3000*3000*3000L
boolean result = (float)d == f2;

 

class Exercise3_9 {
	public static void main(String[] args) { 
		char ch = 'z'; 
		boolean b = ( /* (1) */ ); 
		System.out.println(b); 
	}
}

>> 결과

true
더보기

[3-9] X
//나 : (ch >= 'A' && ch <= 'Z') || (ch >= 'a' && ch <= 'z') || (ch >= '0' && ch <= '9')? true : false;
답 : (ch >= 'A' && ch <= 'Z') || (ch >= 'a' && ch <= 'z') || (ch >= '0' && ch <= '9')

 

class Exercise3_10 {
	public static void main(String[] args) { 
		char ch = 'A'; 
		char lowerCase = ( /* (1) */ ) ? ( /* (2) */ ) : ch; 
		System.out.println("ch:"+ch); 
		System.out.println("ch to lowerCase:"+lowerCase); 
	} 
}

>> 결과

ch:A
ch to lowerCase:a
더보기

[3-10] X
(1) (ch >= 'A' && ch<='Z')
//나 : (2) ch-32
답 : (2) (char)ch-32