1. 연산자: 연산을 수행하는 기호
산술연산자 | +, -, *, /, %, <<, >> | 사칙연산, 나머지 연산 |
비교연산자 | >, <, >=, <=, ==, != | 크고 작음, 같고 다름 비교 boolean반환 |
논리연산자 | && || ! & | ^ ~ | |
대입연산자 | = | 우변 값을 좌변에 저장 (오->왼) |
기타 | intanceof | 형변환 연산자, 삼항연산자 |
2. 연산자 결합규칙
1) 산술 > 비교 > 논리> 대입(=)
2) 단항 > 이항 > 삼항
3) 단항연산자, 대입연산자 제외 모든 연산 진행방향은 오->왼
3. 증감연산자 (++, --)
증가연산자(++) 피연산자 값 +1
감소연산자(--) 피연산자 값 -1
*증감연산자는 일반 산술변환에 의한 자동 형변환 x
전위형: 값 참조 전 증가 ( j = ++i;)
후위형: 값 참조 후 증가 (j=i++;)
4. 비교 연산자 (>=, <=는 띄어쓰기 or 순서바꿀시시 오류남!)
1) 대소비교연산자
> | 좌변이 클 시 true |
>= | 좌변이 크거나 같을 시 true |
< | 우변이 클 시 true |
<= | dn변이 크거나 같을 시 true |
2) 등가비교연산자
== | 좌항과 우항의 값이 같을 시 true |
!= | 좌항과 우항의 값이 같지 않을 시 true |
5. 논리연산자 ( &&, ||) ==> 비교연산자를 논리로 (and, or) 연결
- and 연산자: && (Ampersand)
좌항과 우항의 값 모두 true 시 true반환
- or연산자: || (Pipeline)
좌항과 우항 중 하나라도 true일 시 true 반환
1) i는 a보다 크고 b보다 작다: a < i && i < b
2) i는 a이상 b 이하이다: a<= i && i <=b
3) i는 2의 배수 또는 3의 배수이다 : i%2==0 || i%3==0
4) i는 2 또는 3의 배수이지만, 6의 배수는 아니다 : ( i%2==0 || i%3==0 ) && ( i%6 !=0 )
5) char ch는 '0'~'9' 이다: '0' < = ch && < = '9'
6) 문자 ch 는 소문자
'a' <= ch && ch <= 'z' (**피연산자가 char타입이므로 int로 자동형변환되어 계산)
7) 문자 ch 는 대문자
'A' <= ch && ch <= 'Z' (**피연산자가 char타입이므로 int로 자동형변환되어 계산)
6. 논리부정연산자 ( !)
- 피연산자의 boolean 값을 반대로 바꿈 (true <-> false)
boolean home = true;
home = !home;
System.out.println(play); //false
7. 조건연산자 (삼항연산자)
조건식 ? 참일 때 : 거짓일 때
8. 연산자 우선순위
7. 형변환 연산자
형변환이란: 변수 또는 상수의 타입을 다른 타입으로 변환하는 것
(타입)피연산자
double d = 85.4;
int score = (int)d;
--> int socre = (int)85.4;
-->int score = 85;
변환 | 수식 | 결과 |
int->char | (char)65 | 'A' |
char->it | (int)'A' | 65 |
float->int | (int)1.6f | 1 |
int->float | (float)10 | 10.0f |
8. 자동형변환: 컴파일러 자동으로 형변환
- 원래는 대입연산자 양쪽 타입이 일치해야 하나, 생략을해도 컴파일러가 알아서 변환해주는 것
- 자동형변환의 경우에는 , 큰 값을 작은 타입의 변수에 넣을 때에는 자동형변환이 불가
int i = 3.14f; =>에러
컴파일러가 자동 형변환 해주지 않음
int i = (int) 3.14f ;
값손실이 발생할 경우에는 컴파일러가 자동으로 형변환을 해주지 않고, 직접 강제형변환을 명시해야함
'Java' 카테고리의 다른 글
[JAVA / 자바] API - Math클래스 (0) | 2023.02.20 |
---|---|
Properties 객체 (0) | 2022.11.10 |
[JAVA / 자바] 조건문과 반복문 (1) | 2022.10.15 |
[JAVA / 자바] 형변환 (0) | 2022.10.15 |
[JAVA / 자바] 변수 (1) | 2022.10.11 |