//아래의 내용을 변수에 저장해서 출력하는 코드를 작성하시오.
		// - String : 이름, 주소
		// 	 int 	: 생일 (년,월,일),나이
		//	 char	: 성별 (m.f)
		//  double	: 키
		 
		// Ex) --- 고 객   정 보 ---
	    //     이름 : test
	    //     주소 : 서울시 강남구
	    //     생일 : 2002년 12월 22일
	    //     나이 : 20 세
	    //     성별 : m
	    //     키   : 123.5 cm

 

 

1. 산술연산자
  - +,-,*(곱셈),/(나눗셈)
    % : 나머지 값을 구하는 연산자
        >홀짝수,배수

int ia = 10, ib = 3;
		System.out.println("ia :" + ia + "- ib:" + ib);
		System.out.println();
		
		System.out.println(ia + "+" + ib + "=" + (ia + ib));
		System.out.println(ia + "-" + ib + "=" + (ia - ib));
		System.out.println(ia + "*" + ib + "=" + (ia * ib));
		System.out.println(ia + "/" + ib + "=" + (ia / ib));
		System.out.println(ia + "%" + ib + "=" + (ia % ib));
        
ia :10- ib:3

10+3=13
10-3=7
10*3=30
10/3=3
10%3=1

 

 

 

2. 복합 대입 연산자
- +=, -= ....
 Ex) a += b -> a = a + b
  a 와 b 를 더해서 나온 결과는 왼쪽에 대입한다

int ic = 10;
		System.out.println("ic:" + ic);
		System.out.println();
		
		ic += 5;
		System.out.println("ic:" + ic);
		
		//5 += ic; 에러
		// 연산후에 나온 결과를 왼쪽에 대입하기 때문에, 왼쪽에는 항상 변수가 있어야 한다.
		
		int id = 2;
		ic *= id;
		System.out.println("ic:" + ic);
        
ic:10

ic:15
ic:30

연산 후에 나온 결과를 왼쪽에 대입하기 때문에, 왼쪽에는 항상 변수가 있어야 한다.

 

 

 

3.비교연산자
 - >,<,>=,<=
  == : 같을 때가 참
  != : 서로 다를 때 참
 - 조건식에 따른 결과는 true, false 이다.

 

int ie = 10, ig = 7;
		System.out.println("ie:" + ie + "-ig:" + ig);
		System.out.println();
		
		System.out.println("ie >= ig " + (ie >= ig));
		//System.out.println("ie >= ig " + (ie => ig)); 에러
		System.out.println("ie == ig " + (ie == ig));
		System.out.println("ie != ig " + (ie != ig));
        
ie:10-ig:7

ie >= ig true
ie == ig false
ie != ig true

>= , <=  ok

<= , => Error

 

 

 

4.논리연산자
- && ( and 연산 )
    > 조건식_a && 조건식_b
     : 조건식_a, 조건식_b 둘다 참이어야 참이다.
      
    ||( or 연산)
   > 조건식_a || 조건식_b
    : 조건식_a, 조건식_b 둘중에 하나라도 참이면 참이다.
 
    ! ( not 연산 )
   > !( 조건식 )
    : 참이면 거짓으로, 거짓이면 참으로 변경한다.

 

int na = 10, nb = 7;
		System.out.println("na:" + na + "-na" + na);
		System.out.println();
		
		boolean res;
		res = na > 9 && nb > 9;
		System.out.println("na > 9 && nb > 9: " + res);
		
		res = na > 9 || nb > 9;
		System.out.println("na > 9 || nb > 9: " + res);
		
		res = !(na > 9);
		System.out.println("!(na > 9) : " + res);
        
ie:10-ig:7

ie >= ig true
ie == ig false
ie != ig true

논리형 boolean을 같이 써준다.

 

&& 같은 경우에는 둘 다 true의 결과가 나와야함. 

앞에 조건식에 false 가 나오면 뒤에 조건식은 계산 할 필요가 없어짐.

어차피 false 니깐!

 

 

 


 5.증감연산자
  - 값을 1 증가 시키거나, 1 감소 시킬 때 사용한다.
   > ++ : 1 증가
     -- : 1 감소
   
   ++n -> 1 증가 후에 다른 연산
   n++ -> 다른 연산 후 1 증가
   --n -> 1 감소 후에 다른 연산
   n-- -> 다른 연산 후 1 감소

 

int data = 5;
		System.out.println("data:" + data);
		System.out.println();
		
		int res = 0;
		res = ++data;//증가 후 대입
		System.out.println("data:" + data + "-res:" + res);
		
		res = data++;//대입 후 증가
		System.out.println("data:" + data + "-res:" + res);
		
		res = --data;//감소 후 대입
		System.out.println("data:" + data + "-res:" + res);
		
		res = data--;//대입 후 감소
		System.out.println("data:" + data + "-res:" + res);
		
		int a = 5;
		++a; // a += 1;
		System.out.println("a:" + a);
		

		int n = 5;
		boolean r = (++n > 6) && (++n > 6); 앞에 조건식이 false라 뒤에 조건식 증가 안됨.
		System.out.println("n:" + n +" -r:" + r );
        
data:5

data:6-res:6
data:7-res:6
data:6-res:6
data:5-res:6
a:6
n:6 -r:false

두 개의 조건식이 붙을 때, 앞에 조건식 결과에 따라 뒤에 조건식이 수행되지않을 수 있다. (&&,||)

 

 

그 밖에 비트연산자도 있지만 엄청 중요하거나 자주 나오는 코드가 아니므로 기본연산자 외우기.

 

연산자 우선 순위는 ()가 1순위임.