연산자 (operator) > 학습자료 | IOTsw_u2 U2 Project
학습자료

JAVA 연산자 (operator)

본문

연산자(operator)



연산자는 프로그래밍에서 가장 기본적이면서도 중요한 요소이다.

프로그래밍에서 연산자를 사용하여 계산할때와 실생활에서 계산할때와 그렇게 많은 차이는 없다.
+를 쓰면 값을 더하는것이고 *를 쓰면 값을 곱하는거다. 하지만 완전히 똑같다면 이렇게 공부하지도 않을것이다.
그럼 프로그램에서 사용되는 연산자의 몇가지 특징을 알아보자.

우선은 연산의 우선순위에 대해 알아보자.

3 + 5 * 2

일반 산수에서도 산의 우선순위가 있다. 
위식처럼 덧셈과 곱셈이 함께 나올때 곱셈부터 계산한뒤
덧셈을 해주는것이 우선순위에 따른 계산이다. 
그 우선순위는 프로그래밍에서도 적용된다.
아래는 프로그래밍에서 사용되는 연산자를 우선순위대로 나열한것이다.


단항 연산자

++ , -- , + , - , ~ , ! , (타입)

 

산술 연산자

% , /  , *

+, -

<< , >> , >>>

비교 연산자

 

 

< , > , <= , >=

== , !=

논리 연산자

&

^

|

&&

||

삼항 연산자

? :

대입 연산자

= ( *= , /= , %= , += , -= , <<=

>>= , >>>= , &= , ^= , |= )


몇몇 처음보는 연산자를 제외하면 그렇게 큰 변화는 없다.

위표는 헷갈리때만 참고 하기로 하고 글로써 하나하나 설명하도록 하겠다.


제일 첫번째 단항 연산자.
단항 연산자에 있는 +와 -는 덧셈, 뺄셈이 아니라 양수, 음수를 나타내는것이다. 헷갈리지말자
(타입)은 형변환을 뜻하는것이다. 
(int)a + b 라는 식이 있을때 a를 먼저 int형으로 형변환 하고 난뒤 b랑 더하게 되는것이다.


단항연산자에서 중요한부분은 ++, -- 이다.

위 연산자는 증감연산자라고 불리며 a + 1을 더욱더 간단하게 하기 위해 a++ 처럼 사용하는것이다.
여기서 중요한부분이 증감연산자는 값의 앞이나 뒤 아무곳이나 붙힐수 있지만
값의 앞에 있느냐 뒤에 있으냐냐에 따라 그 뜻은 조금 달라진다.

a = ++X   와      a = X++

위의 두 공식 모두 X에 1을 더하는것이다.
하지만 a의 값은 틀려진다.

a = ++X는 X에 1을 더하고 난뒤 a라는 이름을 가진 저장장소에 그 값을 저장시킨다는 뜻이지만

a = X++는 X를 a라는 이름을 가진 저장장소에 그 값을 저장시키고 난뒤 X에 1을 더해주어라는 뜻이다.


x++ 를 풀면   x= x+1 이 된다



아래 예제를 잠시 보자. (귀찮아서 생략하고 싶지만;; 예제를 하나 들어야될꺼 같다.;;)

int i = 0; // 변수 i 저장장소에 0 넣어두었다.

 

i++;   // i = i + 1 이라는 뜻이다.

// i 1 더해 그것을 다시 i라는 저장공간에 넣어라는 명령이다

// 그럼 i + 1에서의 i 0 값을 가지고 있지만 +1 하여 다시 i  값을

// 넣었으니 i 저장장소에는 이제 1 들어가있다.

  

++i;  // 위와 마찬가지로 i +1 되어 이제 i 2 될것이다.

  

// 여기까지는  두식의 다른점을 찾을수가 없다.

 

int j = 0; //이제 j라는 공간을 만들어보자.

  

  j = i;   //j라는 공간안에 i 집어 넣었다.위에서 i 2이기 때문에 j = 2 될것이다.

 

j = ++i;  j = i++; 

 

/* 위의 두가지 식을 보자.

언뜻 보면 둘다 j라는 공간에 i 1 더한값을 집어 넣어라는 뜻으로 보인다.

하지만 위에서 말했듯이 증감연산자는 앞에 있느냐 뒤에 있느냐에 따라 달라진다.

빨간색 j i 1 더해서 j라는 저장공간에 값을 저장하기 때문에

j = 3, i = 3  될것이다(i 2였다는걸 벌써 까먹으면 안된다.)

하지만 초록색 j i 먼저 j 저장하고 난뒤 1 더해주는것이다.

 

 

그래서 j = 2, i = 3 으로 저장되는것이다.

아직 헷갈리는 사람이 있으면 Java문제 계시판에서 증감연산자를 5 풀어보아라.

계속 같은문?

댓글목록

학습자료 목록

Total 11건 1 페이지
게시물 검색

IOTsw_u2 정보

회사 . U2
주소 . 어느별 하늘 아래에 있것지요
사업자 등록번호 . 백수임 대표 . 김씨 전화 . 02-123-4567 팩스 . 팩스없음
통신판매업신고번호 . 낼할께 개인정보관리책임자 . 김씨가 알아서 함 부가통신사업신고번호 신고안함
Copyright © 2001-2013 U2. All Rights Reserved.
닫기