[Java] 연산자

Walter Mitty·2022년 10월 18일
0

KOSTA

목록 보기
4/33
post-custom-banner
  • 연산자
    • 산술연산자 : + , - , * , / , %
    • 대입연산자 : = , += , -= , *= , /= , %=
    • 비교연산자 : == , != , > , >= , < , <=
    • 논리연산자 : && , || , !
      ex) ! false = true / ! true = false
    • 단항연산자 : ++ , --
    • 삼항연산자 : ? :

단항연산자

int i = 10;
System.out.println(i++); // 10 → i를 먼저 출력하고 i가 증가
Sysyem.out.println(i); // 11
int i = 10;
System.out.println(++i); // 11 → i를 증가시킨 후 출력
System.out.println(i); // 11

메모장 연습코드

public class Operator{
  public static void main(String [] args) {
    System.out.println(1+2); //3
    System.out.println(6/2); //3 컴파일러는 6과 2 모두 int로 이해한다
    System.out.println(6/5); //1
    System.out.println(6/5.0); //1.2가 출력이 된다. 컴파일러가 6은 int, 5.0이 double이기 때문에 산술연산시 실수가 나온다.
    System.out.println((float)6/5); //1.2 
    System.out.println(1/0); //정수를 0으로는 나누기 안됨. 컴파일은 가능하나 ArithmeticException이 난다.
    System.out.println("THE END");
    //ArithmeticException 이 나을까, 컴파일 에러가 나을까... 컴파일 에러 나는게 낫다. 에러가 날지 안날지 신중하게 개발하는게 좋다.
  }
}
public class Operator{
  public static void main(String [] args) {
    System.out.println(1+2); //3
    System.out.println(6/2); //3 컴파일러는 6과 2 모두 int로 이해한다
    System.out.println(6/5); //1
    System.out.println(6/5.0); //1.2가 출력이 된다. 컴파일러가 6은 int, 5.0이 double이기 때문에 산술연산시 실수가 나온다.
    System.out.println((float)6/5); //1.2 
    //System.out.println(1/0); //정수를 0으로는 나누기 안됨. 컴파일은 가능하나 ArithmeticException이 난다.
    System.out.println(6%5);

    System.out.println("대입연산자");
    int i;
    i = 1+2; // 1과 2를 더해서 변수 i에 대입했습니다.
    System.out.println(i);
    
    i += 4; // 기존 i 값에 4를 더해서 변수에 대입한다. i = i + 4
    System.out.println(i); //7 

    short s1, s2, s4;
    s1 = 10;
    s2 = 20;
    //s3 = s1+s2; // error: incompatible types, +를 만나면 s1이 int타입으로 바뀌고, 자동으로 s2도 int 타입으로 바뀐다.
// short는 2 byte, int는 4byte라서 자동형변환이 안된다.
// 방법1. s1+s2;
// 방법2. int s3; 인트로 해놓고
    int s3 = s1+s2;
    s4 = (short)(s1+s2);
    System.out.println(s4);

    System.out.println("비교연산자");
    System.out.println(1==2);
    i = 17;
    System.out.println(i%2 == 1); //연산자 우선순위. 우선순위가 가장 낮은건 == 연산자. 산술연산 > 비교연산
    //i = i%2 == 0; error: incompatible types
    System.out.println(i);    

    System.out.println("THE END");
    //ArithmeticException 이 나을까, 컴파일 에러가 나을까... 컴파일 에러 나는게 낫다. 에러가 날지 안날지 신중하게 개발하는게 좋다.
  }
}
post-custom-banner

1개의 댓글

comment-user-thumbnail
2022년 10월 19일

단항 연산자 잘 참고하고 갑니다~

답글 달기