operator

operator01

:대입연산자, 관계연산자

package chapter03.operator;

public class Operator1 {

	public static void main(String[] args) {
		// 대입 연산자
		int a, b, c, sum;
		a = 3; b = 4; c = 5;
		sum = a + b + c;
		System.out.println(sum);
		
		//관계 연산자
		int num = 10;
		System.out.println(num > 3);
		System.out.println(num < 3);
		System.out.println(num >= 3);
		System.out.println(num <= 3);
		System.out.println(num == 3);
		System.out.println(num != 3);

		//복합 관계 연산자 
		int num2 = 3;
		System.out.println(num2 += 3); //num2 = num2 + 3
		System.out.println(num2 -= 3); //num2 = num2 - 3
		System.out.println(num2 *= 3); //num2 = num2 * 3
		System.out.println(num2 /= 3); //num2 = num2 / 3 -- 몫
		System.out.println(num2 %= 3); //num2 = num2 % 3 -- 나머지
	}

}

operator02

:증감연산자, 부호 연산자,문자열 계산

package chapter03.operator;

public class Operator2 {

	public static void main(String[] args) {
		// 증감 연산자
		int value = 2;
		int a = ++value;
		System.out.println("value = " + value + ", a = " + a);
		
		value = 2;
		a = value++;
		System.out.println("value = " + value + ", a = " + a);
		
		//부호 연산자
		int value2 = 8;
		System.out.println(value2);
		value2 = -value2;
		System.out.println(value2);
		
		//문자열 연산
		System.out.println(4 + 5);
		System.out.println("영구와" + "땡칠이");
		System.out.println("응답하라" + 1999);
		System.out.println(19 + 99 + "응답하라");
		System.out.println("" + 19 + 99 + "응답하라"); //문자열과 숫자는 문자열로 인식. 그래서 1999 
	}

}

operator03

:논리 연산자($$, ||) / not

package chapter03.operator;

public class Operator3 {

	public static void main(String[] args) {
		// 논리 연산자
		int num1 = 10, num2 = 20;
		
		//and && ~이면서
		boolean flag = (num1 > 0) && (num2 > 0);
		System.out.println(flag);
		
		//or || ~이거나
		flag = (num1 < 0) || (num2 > 0);
		System.out.println(flag);
		
		//not
		System.out.println( ! flag);
		
		//헷갈리니까 구분
		System.out.println("===========");
		
		//논리 연산자의 함정
		int num = 10;
		int i = 2;
		
		boolean value = ((num = num + 10) < 10) && ((i = i + 2) < 10);  //20은 10보다 큼 false , 뒤는 true
		System.out.println(value);
		System.out.println(num);
		System.out.println(i); //i는 2임 앞에서false 떠서 실행 안된거임.(= 결론이 이미 나와서) 이렇게 순서에 따라 실행이 안되는 경우가 있으니 주의
		
		num = 10;
		i = 2;
		value = ((num = num + 10) > 10) || ((i = i + 2) < 10);
		System.out.println(value);
		System.out.println(num);
		System.out.println(i); 

	}

}

operator04

:삼항연산자,조건연산자

package chapter03.operator;

public class Operator4 {

	public static void main(String[] args) {
		// 삼항 연산자, 조건 연산자
		//조건식 ? 결과1 : 결과2
		int fatherAge = 45;
		int motherAge = 47;
		
		String s = (fatherAge > motherAge) ? "아빠가 연상" : "엄마가 연상";
		System.out.println(s);
		
		int x = 10 > 3 ? 10 : 2;
		System.out.println(x);
		
	}

}