IT수업/JAVA PART1

IT 수업 10주차 (7) 연산자

워제하 2024. 2. 29. 10:57

 

- 기본 연산자

+, -, *, /, %

 

 

- 문제

두 수를 입력 받아 두수의 합/차/곱을 출력하는 프로그램을 Scanner를 사용해 만들어보기

 

 

 

 

 

● 대입연산자
- LV = RV;
- 공간 = 값(우선 처리);

 

 

- 복합대입 연산자(산술+ 대입)

 

 

 

- 비교연산자 (비교연산 자체 보다 비교연산에서 나오는 값이 더 중요함)

 

 

 

- 논리연산자

 

AND 연산자 && :  (true)&&(true) = true , 그외는 거짓
- &&기호를 기준으로 왼/오른쪽 둘다 true 이면 true

 

OR 연산자 || :  t || t = t,  t || f =t,  f || t = t,  f || f = f
- ||기호를 기준으로 왼/오른쪽 중 하나만 true 이면 true

 

! 연산자
- true이면 false, false 이면 true

 

< 실행결과 >

 

 

 

 

 

- 논리부정연산자

 

 

 

- 증감연산자

++a(--a) : 전치 연산자 : 먼저 값 1증가(1감소) 이후 다른 연산자 처리
a++(a--) : 후치 연산자 : 다른 연산자 처리 먼저 한 후 1증가(1감소)

 

 

 

 

- 삼항연산자

(조건식)? 참인경우 실행코드 : 거짓인경우 실행코드;

 

 

 

- % 연산자

 

 

 

- 배수 구하기

 

 

 

- 수의 범위

 

 

 

- 랜덤 수 구하기

 

 

 

 

- 끝자리수 구하기

 

 

 

- 비트연산자

 

AND 비트 연산자 : 둘다 1이여야 1이 된다

OR 비트 연산자 : 둘 중 하나만 1이여도 1 이된다.

XOR  비트 연산자 : 두개도 모두 1이면 0이 나옴

NOT 비트 연산자 : 비트반전(1의 보수 구하기)

 

 

 

 

- shift 연산자

 

왼쪽으로 비트전체를 밀어주고 (기존 수에서 밀린만큼(n) 2의 n제곱 해주면됨)

오른쪽으로 비트 전체를 밀어줌 ( 기존 수에서 밀린만큼(n) 2의 -n제곱 해주면 됨)

 

 

 

- 증감연산자

 

 

 

 

 

 

 

< 정리 >

 

 

 

< 문제 >

 - b에서 문제가 일어남. b에 대입시키는 5가 int형이라서 

 

세번째줄은 ture && ture로 ture 나온다

5번째줄은 false || false 로 false로 나온다.

 

 

 

 

 

 

 

< 답 >