[Java] 기초2 (연산자)

sua_ahn·2022년 12월 21일
0

Java

목록 보기
3/15
post-thumbnail

🧮 연산자 Operator

산술 연산자

사칙연산과 나머지 연산

  • +, -, *, /, %

대입 연산자

값을 변수에 전달

  • =, +=, -=, *=, /=, %=

증감 연산자

피연산자를 1씩 증가 또는 감소시킴

  • Increment  : ++
  • Decrement : --
	int n1 = 0;
    
    n1 += 1				// n1 = 1
    n1++;				// n1 = 2
    ++n1;				// n1 = 3
    
    // 연산 순서 주의!
    int n2 = n1++;		// 대입 n2 = n1 == 3 -> 증가 n1 = 4
    int n3 = ++n1;		// 증가 후 대입 n3 = 1 + n1 == 5

비교 연산자

값을 비교하여 논리값을 반환

  • ==, !=, <, >, <=, >=

논리 연산자

논리값(true/false)을 조건 연산

  • AND : &&
  • OR   : ||
  • NOT : !

삼항 연산자

조건 연산의 결과에 따라 참값 또는 거짓값을 반환

  • (조건식) ? 참값 : 거짓값
	String s = (n1 < 5) ? "5보다 작음" : "5보다 크거나 같음";

비트 연산자

두 피연산자를 비트 단위로 논리 연산

  • AND : & -> 1 & 1일때만 1
  • OR   : | -> 0 | 0 일때만 0
  • XOR : ^ -> 1 ^ 0 일때만 1
  • 반전 : ~
xyx & yx | yx ^ y~ x
010111
111100
010111
100110
5(10)14(10)4(10)15(10)11(10)10(10)

int n = 0x5 & 0xe;				 // 16진수

System.out.println(n);			 // 10진수
System.out.printf("0x%x \n", n); // 16진수

시프트 연산자

피연산자를 비트 단위로 왼쪽 또는 오른쪽으로 이동

  • left shift   : <<
  • right shift : >>
피연산자0011=3(10)
<< 101106(10)
>> 100011(10)

<< 1 은 10진수에 곱하기 21 한 것과 같고,
>> 1 은 10진수에 나누기 21 한 것과 같다.

profile
해보자구

0개의 댓글