[JAVA] 연산자

msung99·2022년 2월 11일
0

피연산자 개수에 의한 연산자 구분

  • 피연산자 개수에 따라서 단항, 이항, 삼항 연산자로 구분할 수 있다

단항 연산자( +, -, ! )

  • 피연산자가 1개 존재
  • 종류 : +, -, !
  • 형식 : +x, -x, !x

이항 연산자( =, <, ! )

  • 피연산자가 2개 존재
  • 종류 : =, <, !
  • 형식 : x = y, x < y, x != y

삼항 연산자( 조건식 )

  • 피연산자가 3개 존재
  • 종류 : 조건문
  • 형식 : 조건식: true ? false

대입 연산자

  • = : 대입 연산자
  • == : 같다라는 비교 연산자

산술 연산자

  • / : 나눗셈
  • % : 나머지

복합 대입 연산자

  • 종류 : += , -= , *= , /= , % =

관계 연산자

  • 종류 : <, >, >=, <=, ==, !=
  • return 시 True 또는 False 를 리턴한다
int x = 10;
int y = 10;
System.out.println("x == y :" + (x==y)); # True 출력

증감 연산자

  • 종류 : ++, --
int x = 10;

# 전위 연산자 - x값을 먼저 1 증가시키고, 출력시킬 수 있게함
System.out.println("%d", ++x); # 11

x = 10;
System.out.println("%d", --x); # 9

# 후위 연산자 - x값을 그대로 출력한 이후에, 나중에 1증가
x = 10;
System.out.println("%d", x++); # 10
System.out.println(x); # 11

x = 10;
System.out.println("%d", x--); # 10
System.out.println(x); # 9

논리 연산자

피연산자의 논리곱(AND), 논리합(OR), 논리부정(NOT) 을 수행한다.

  • 종류 : &&, ||, !
# 논리 연산자
boolean b1 = false;
boolean b2 = True;

System.out.prinln("b1 && b2 :" + (b1 && b2));
System.out.prinln("b1 || b2 :" + (b1 && b2));
System.out.prinln("!b1 :" + !b1);
System.out.prinln("!b2 :" + !b2);

조건(삼항) 연산자

삼항 연산자로 두 개의 피연산자 연산 결과에 따라서 나머지 피연산자가 결정된다.

  • 형식 : 조건식 ? 식1 : 식2
    • => 조건식이 참이면 식1이 실행되고, 거짓이면 식2가 실행된다.
x = 10; y = 20;
int result = 0;
result = (x>y) ? 100 : 200;
System.out.println("result:" + reuslt); # 200

result = (x<y) ? 100 : 200;
System.out.println("result:" + result); # 100

result = ( x == y ) ? 100 : 200;
System.out.printlb("result:" + result); # 200

비트 연산자

데이터를 비트(bit) 단위로 환산하여 연산을 수행하며, 다른 연산자보다 연산 속도가 향상된다.

  • 종류 : & (AND연산) , | (OR연산) ,^ (XOR연산)

    • a & b : a와 b 모두 1이면 1
    • a | b : a 나 b 중 하나라도 1이면 1
    • a & b : a와 b가 같지 않으면 1
  • 2진법으로 전환 후, 비트 단위로 각 자릿수를 비교를 수행한다.

x = 2; # 2진법으로 "0010" 
y = 3; # 2진법으로 "0011"
System.out.println("x&y:" + (x&y));  // 2 "0010"
System.out.println("x|y:", + (x|y)); // 3 "0011"
System.out.println("x^y:', + (x^y)); // 1 "0001"
profile
블로그 이전했습니다 🙂 : https://haon.blog

0개의 댓글