본문 바로가기

프로그래밍/Java

[Java]연산자

연산자(Operator)란

  자바에서 여러 종류의 연산을 수행하기 위한 다양한 기호이다.

  - ex) '1 + 3'에서 1과 3은 피연산자, +기호는 연산자라 한다.

 

연산자 종류   

1.산술연산자

   - 사칙연산을 다루는 연산자

 - 종류 

'+' : 왼쪽의 피연산자에 오른쪽의 피연산자를 더하는 연산자 기호.

'-' : 왼쪽의 피연산자에서 오른쪽의 피연산자를 빼는 연산자 기호.

'*' : 왼쪽의 피연산자와 오른쪽의 피연사를 곱하는 연산자 기호.

'/' : 왼쪽의 피연산자를 오른쪽의 피산자로 나누는 연산자 기호.

'%' : 왼쪽의 피연산자를 오른쪽의 피연산자로 나눈 후, 그 나머지 값을 변환하는 연산자 기호.

 

 

  2. 대입 연산자

  - 변수에 값을 대입 할 때 사용하는 이항 연산자이며, 피연산자들의 겹합 방향은 오른쪽에서 왼쪽이다.

    '=' : 대입 연산자 기호.

  - 복합 대입 연산자란, 대입연산자와 다른 연산자를 결합하여 만든 연산자.

  - 종류
    '+=' : 왼쪽의 피연산자에 오른쪽의 피연산자를 더한 후 그 결과값을 왼쪽의 피연산자에 대입하는 기호.
    '-=' : 왼쪽의 피연산자에서 오른쪽의 피연산자를 뺀 후 그 결과값을 왼쪽의 피연산자에 대입하는 기호.
    '*=' : 왼쪽의 피연산자에 오른쪽의 피연사를 곱한 후, 그 결과값을 왼쪽의 피연산자에 대입하는 연산자 기호.
    '/=' : 왼쪽의 피연산자에 오른쪽의 피산자를 나눈 후, 그 결과값을 왼쪽의 피연산자에 대입하는 연산자 기호.
    '%=' : 왼쪽의 피연산자를 오른쪽의 피연산자로 나눈 후, 그 나머지 값을 왼쪽의 피연산자에 대입하는 연산자 기호.

 

 

 

   3. 증감 연산자

 - 피연산자를 1씩 증가 혹은 감소시킬 때 사용하는 연산자

 - 피연산자가 단 하나뿐인 단항 연산자

  -종류

  '++(변수)' : 먼저 피연산자의 값을 1증가시킨 후 해당 연산을 진행한다.

  '(변수)++' : 먼저 해당 연산을 진행 한 후, 피연산자의 값을 1증가시킨다.

  '--(변수)' : 먼저 피연산자의 값을 1감소시킨 후 해당 연산을 진행한다.

  '(변수)--' : 먼저 해당 연산을 수행 한 후, 피연산자의 값을 1감소시킨다.

 

 

 

 

   4. 비교 연산자

 - 피연산자 사이의 상대적인 크기를 판단하는 연산자

 - 왼쪽의 피연산자와 오른쪽 피연산자를 비교하여 어느 쪽이 더 크고 작은지, 같은지를 판단하는 연산자

 - 비교연산자는 모두 두개의 피연산자를 가지는 이항 연산자이며, 피연산자들의 결합 방향은 왼쪽에서 오른쪽이다.

  -종류
 
'==' : 왼쪽의 피연산자와 오른쪽의 피연산자가 같으면 참(true)을 반환, 그렇지 않으면 거짓(false)를 반환한다.

'!=' : 왼쪽의 피연산자와 오른쪽의 피연산자가 같지 않으면 참(true)를 반환, 그렇지 않으면 거짓(false)를 반환한다.

  '>, <' : 피연산자가 다른 피연산자 보다 크면 참(true)를 반환, 그렇지 않으면 거짓(false)를 반환한다.

  '>, <' : 피연산자가 다른 피연산자 보다 크면 참(true)를 반환, 그렇지 않으면 거짓(false)를 반환한다.

  '>=, <=' : 피연산자가 다른 피연산자보다 크거나(작거나) 같으면 참, 그렇지 않으면 거짓(false)를 반환한다.

 

 


   5. 논리 연산자

 -논리 연산자는 주어진 논리식을 판단하여, 참(true)과 거짓(false)을 결정하는 연산자

  -종류

'&&' : 논리식이 모두 참이면 참(true)을 그렇지 않으면 거짓(false)을 반환한다.

 '||' : 논리식 중 하나라도 참이면 참을 반환한다. 

 '!' : 논리식의 결과가 참이면 거짓을, 거짓이면 참을 반환한다.


   ex)

변수 A 변수 B A && B A || B !A !B
true true true true false false
true false false true false true
false true false true true false
false false false false true true

 

 


   6. 비트 연산자

 - 비트단위로 논리연산을 할 때 사용하는 연산자.

 - 비트단위로 왼쪽, 오른쪽으로 전체 비트를 이동하거나 1의 보수를 만들 때 사용한다.

  -종류

'&' : 대응되는 비트가 모두 1이면 1을 반환한다. (비트 AND연산)

'!' : 대응되는 비트중에서 하나라도 1이면 1을 반환한다. (비트 OR연산)

'^' : 대응되는 비트가 서로 다르면 1을 반환한다. (비트 XOR연산)

'~' : 비트가 1이면 0, 0이면 1로 반전시킨다. (비트 NOT연산)

'<<' : 명시된 수만큼 비트들을 전부 왼쪽으로 이동시킨다.

'>>' : 부호를 유지하면서 지정한 수만큼 비트를 전부 오른쪽으로 이동시킨다.

'>>>' : 지정한 수 만큼 비트를 전부 오른쪽으로 이동시키며, 새로운 비트는 전부 0이 된다.

 


   7. 삼항 연산자

 - 자바에서 유일하게 피연산자를 세 개 가지는 조건 연산자이다.

 

 - 삼항 연산자의 문법

조건식 ? 반환값1 : 반환값2  ( 조건식이 참일 경우 반환값1을 반환하고, 거짓이면 반환값2를 반환한다. )

 

 

 

※삼항 연산자 안에 또 다른 삼항 연산자를 쓸 수 있다.

조건식 ? 반환값1 : (조건식 ? 반환값2 : 반환값3)

( 첫번째 조건식에서 false(거짓) 값이 나왔을 경우 반환값1이 아닌 밑줄 친 조건식으로 넘어가 다시 한번 삼항 연산자를 수행하여, (true)참이면 반환값2, false(거짓)이면 반환값3을 반환한다. )

 

 

public class 삼항연산자 {

	public static void main(String[] args) {

		int num = 2;
		
		System.out.println(num > 0? "양수 입니다." : num < 0? "음수 입니다.":"0 입니다.");
	}
}

 

'프로그래밍 > Java' 카테고리의 다른 글

[Java]Scanner vs BufferedReader  (1) 2021.03.08
[Java]제어문  (0) 2021.03.03
[Java]변수와 상수  (1) 2021.02.26
[Java]형변환  (0) 2021.02.25
[Java]데이터 자료형  (0) 2021.02.25