ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • java) 연산자
    공부일기/Java 공부 2020. 8. 26. 16:00

    ㅁ 항과 연산자

     ㅇ (연산자) 연산에 사용하는 기호를 연산자라고 하며, 항의 개수에 따라 단항 연산자, 이항 연산자, 삼항 연산자로 나눌 수 있음

       - 기본적으로 사칙연산은 연산자

       - 연산자 우선순위가 있음

     

    연산자 설명 연산 예
    단항 연산자 항이 한 개인 연산자 ++num
    이항 연산자 항이 두 개인 연산자 num1 + num2;
    삼항 연산자 항이 세 개인 연산자 (5 >3) ? 1 : 0;

     

     ㅇ (대입 연산자) 변수에 값을 대입하는 연산자 (=)

       - 이항 연산자 중 우선순위가 가장 낮은 연산자

       - 하나의 문장에 여러 연산자가 있을 때 모든 연산을 다 끝낸 후 마지막에 연산 결과를 변수에 대입

         * 왼쪽 변수 = 오른쪽 변수(또는 식)

    int age = 24; // 나이를 의미하는 age 변수에 값 24를 대입
    
    totalScore = mathScore + engScore;
    // 1. mathScore 값과 engScore 값을 더하여
    // 2. 총점을 의미하는 totalScore 변수에 대입

     

     ㅇ (왼쪽 변수와 오른쪽 변수) 대입 연산자를 사용하면 항상 오른쪽 변수 값을 가져와서 왼쪽 변수에 대입하는 것을 알 수 있음

       - 값이 대입되는 왼쪽 변수에는 10같은 숫자가 올 수 없고 항상 변수나 상수가 와야 함

       - 오른쪽 변수에는 변수나 숫자(상수 포함)가 올 수 있음

     

     ㅇ (부호 연산자) 더하기와 빼기(+, -) 두 가지가 있음

       - 더하기, 빼기 연산에 쓰는 이항 연산자이면서 부호를 나타내는 단항 연산자로도 사용

       - (+)는 부호비트를 그대로 유지하며, (-)는 부호비트를 반대로 변환함

    int i1 = -5; 
    int i2 = +i1; 
    int i3 = -i1; 
    
    System.out.println(i1); // -5 출력
    System.out.println(i2); // -5 출력
    System.out.println(i3); // 5 출력
    
    int i1 = -i1;
    
    System.out.println(i1); // 5 출력

     

     ㅇ (산술 연산자) 사칙 연산에서 사용하는 연산자로 5가지가 있음

         * 덧셈(+), 뺄셈(-), 곱셈(*), 나눗셈(/), 나머지(%) 

     

     

     ㅇ (증감 연산자) 연산자 앞이나 뒤에 사용하며 값을 1만큼 늘리거나, 1만큼 줄일 때 사용

       - 연산자를 피연산자 앞에 쓰는 경우와 뒤에 쓰는 경우는 그 결과 값이 전혀 다르므로 주의해야 함

         * 증감 연산자가 피연산자 앞에 있으면 문장이 끝나기 전에 피연산자 값이 증가하거나 감소

         * 증감 연산자가 피연산자 뒤에 있으면 문장이 끝난 후에 피 연산자 값이 증가하거나 감소

    val = ++num; // 먼저 num 값이 1이 증가한 후 val 변수에 대입
    val = num++; // val 변수에 기존 num 값을 먼저 대입한 후 num 값 1 증가
    
    val = --num; // 먼저 num 값이 1 감소한 후 val 변수에 대입
    val = num--; // val 변수에 기존 num 값을 먼저 대입한 후 num 값 1 감소

     

     ㅇ (관계 연산자) 항이 두 개인 이항 연산자로 두 개의 항 중 어느것이 더 큰지, 작은지, 같은지 등의 여부를 검사

       - 관계 연산자의 결과 값은 참(true) 또는 거짓(false)으로 반환

         * >, <, >=, <=, ==, !=

       - 조건식이나 반복문을 제어하는 데 자주 사용하는 연산자로 두 값을 비교하여 결과값을 반환(ture, false)하므로 비교 연산자라고도 부름

     

     

     ㅇ (논리 연산자)

       - 명제가 모두 참이면 논리 곱은 참(AND)

       - 두 명제 중 하나만 참이면 논리 합은 참(OR)

       - 참의 부정은 거짓(NOT)

       - 거짓의 부정은 참(NOT)

    연산자 기능 연산 예
    &&
    (논리 곱)
    두 항이 모두 참인 경우에만 결과 값이 참입니다.
    그렇지 않은 경우는 거짓입니다.
    boolean val = (5 > 3) %% (5 > 2);
    ||
    (논리 합)
    두 항 중 하나의 항만 참이면 결과 값은 참입니다.
    두 항이 모두 거짓이면 결과 값은 거짓입니다.
    boolean val = (5>3) || (5<2);
    !
    (부정)
    단항 연산자입니다. 참인 경우는 거짓으로 바꾸고,
    거짓인 경우는 참으로 바꿉니다.
    boolean val = !(5>3);

     

    A B A&&B A||B !A A^B
    True True True True False False
    True False False True False True
    False True False True True True
    False False False False True False
    int num1 = 10;
    int num2 = 20;
    
    boolean flag = (num1 > 0) && (num2 >0);
    System.out.println(flag); // True
    
    flag = (num1 < 0) && (num2 > 0);
    System.out.println(flag) // False
    
    flag = (num1 < 0) || (num2 > 0);
    System.out.println(flag) // Ture

     

     

     ㅇ (복합 대입 연산자) 연산자와 다른 연산자를 조합해 하나의 연산자처럼 사용하는 연산자

       - 산술 연산자, 비트 연산자와 함께 사용하여 코드를 간결하게 표현할 수 있음

       - 대입 연산자는 우선순위가 가장 낮은 연산자로 연산이 모두 끝난 후에 마지막으로 결과 값을 변수에 대입

    연산자 기능 연산 예
    += 두 항의 값을 더해서 왼쪽 항에 대입 num1 += 2;
    num1 = num1 +2; 와 같음
    -= 왼쪽 항에서 오른쪽 항을 빼서 그 값을 왼쪽 항에 대입 num1 -= 2;
    num1 = num1 -2; 와 같음

     

     ㅇ (조건 연산자) 연산에 필요한 항의 개수가 3개로 '삼항 연산자'라고도 부름

    연산자 기능 연산 예
    (조건식) ? 결과1 : 결과2 ; 조건식이 참이면 결과1, 조건식이 거짓이면 결과2가 선택 int num = (5>3) ? 10: 20;
    int fatherAge = 45;
    int motherAge = 40;
    
    char ch;
    ch = (fatherAge > motherAge)? "T" : "F";
    
    System.out.println(ch); // T 출력

    '공부일기 > Java 공부' 카테고리의 다른 글

    java) 반복문1  (0) 2020.08.27
    java) 조건문3  (0) 2020.08.27
    java) 조건문2  (0) 2020.08.26
    java) 조건문1  (0) 2020.08.26
    java) 변수, 자료형, 형 변환  (0) 2020.08.26
Designed by Tistory.