티스토리 뷰
Chapter 3. 연산자
▶ 학습 목표
: 연산자의 사용 목적에 따라 구분하고 사용할 수 있다.
3-1. 연산자의 종류와 우선순위
- 연산자의 종류
연산자는 크게 산술, 단항, 비교, 논리, 쉬프트, 기타 로 나눌 수 있다.
종류 | 연산자 | 설명 |
산술 연산자 | + - * / % | 사칙연산 및 나머지 연산 |
단항 연산자 | - | 부호 연산자 |
! | 논리 부정 연산자 | |
++ -- | 증감 연산자(1씩 증가 1씩 감소) | |
비교 연산자 | > < >= <= == != | 양 변을 비교하는 연산자 |
논리 연산자 | && || ^ | AND, OR, XOR 연산 |
쉬프트 연산자 | << >> >>> | 비트를 이동하는 연산 |
기타 연산자 | (조건)? 참:거짓 | 삼항 연산자 |
= += -= *= | 대입 연산자 |
- 연산자의 우선순위
연산자 우선순위 | 종류 | 연산자 |
1 | 최우선 연산자 | [], (), . |
2 | 단항 연산자 | !, ~, -, +, ++, --, () |
3 | 산술 연산자 | +, -, *, /, % |
4 | 쉬프트 연산자 | <<, >>, >>> |
5 | 비교 연산자 | <, >, >=, <=, ==, != |
6 | 논리 연산자 | && || |
7 | 삼항 연산자 | (조건)?참:거짓 |
8 | 대입 연산자 | =, +=, -=, *= 등(산술과 조합) |
9 | 후위 증감 연산자 | a++, a-- |
* 대입 연산자 기준 오른쪽부터 연산 시작
* 괄호로 먼저 연산할 것은 묶어줘야 한다.
3-2. 산술 연산자
: 산술 연산자는 상수 또는 변수 등을 이용하여 사칙연산과 나머지 연산을 하는 연산자이다.
ex)
public static void main(String[] args) {
int a = 10;
int b = 3;
//a+b=13
//System.out.println(13);
System.out.println(a+b);
System.out.println(a-b);
System.out.println(a*b);
System.out.println(a/b);
System.out.println(a%b);
}
3-3. 단항 연산자
: 단항 연산자는 항이 하나인 연산자이다.
public static void main(String[] args) {
int a = 1;
System.out.println(a);
a++;
System.out.println(a); //출력 1
System.out.println(++a); //출력 2
System.out.println(a++); //후위연산자 사용하여 a값 출력 후 a값에 1 증가 출력 2
System.out.println(a); //출력 3
}
1
2
2
3
char t = 'A';
t= t+3
//t에 저장된 문자는 연산될때 숫자로 저장되어 연산하는데 다시 t에 저장하려면 t는 char로 선언되엇기때문에 저장할 수 없다.
System.out.println(t);
System.out.println(t+3);
//println에서는 자동형변환을 해주기 때문에 t+3이 가능하다.
t=(char)(t+3); //t에 저장하기 위하여 char 값으로 casting해서 강제형변환한다.
System.out.println(t);
int v= t; //int로 형변환
System.out.println(t);
System.out.println(v);
//첫번째 print는 오류 → t는 char이기 때문에 숫자로 연산하고 t에 다시 대입할 수 없다.
68
D
D
68 //v는 int로 형변환했기때문에 68로 출력
3-4. 비교 연산자
public static void main(String[] args) {
double a = 3.14;
double b = 5.14;
System.out.println(a==b);
System.out.println(a!=b);
String c1 = "Hello JAVA!";
System.out.println(c1.equals("Hello java!")); //자바는 대소문자를 구별한다.
System.out.println(c1.equals("Hello JAVA!"));
false
true
false
true
* 문자는 equals로 비교해야한다. ('=='로는 비교 불가)
3-5. 논리 연산자
두항의 값이 boolean 값일 경우 사용
AND, OR, XOR이 있으며 AND(&&) 연산은 곱과 같고 OR(||) 연산은 더하기와 같다.
ex)
public static void main(String[] args) {
int a=10;
System.out.println(5<a && a<15);
System.out.println((5<a && a<15)&& a%2==0);
a=4;
System.out.println((5<a && a<15)&& a%2==0);
System.out.println((5<a && a<15)|| a%2==0);
}
true
true
false
true
3-7. 기타 연산자
기타 연산자에는 삼항 연산자와 대입 연산자 두가지가 있다.
- 삼항 연산자
: 삼항 연산자는 항이 세 개인 연산자이다. 조건식의 참/거짓 여부에 따라 다른 결과를 반환한다.
조건? 항목1:항목2
→ 조건 값이 참이면 항목1을 출력 거짓이면 항목2를 출력한다.
ex)
public static void main(String[] args) {
int age = 17;
System.out.println(age>19? "성인입니다":"청소년입니다");
//age>19 수행 후 참 거짓 값에 따라 출력값 달라짐 앞(참)뒤(거짓)
청소년입니다
- 대입 연산자
: 값을 할당하는데 쓰이는 연산자이다.
ex)
public static void main(String[] args) {
int a=3;
int b=5;
b=a;
System.out.println(b);
a+=1; //대신 증감연산자 사용가능(++a)
System.out.println(a);
a/=2;
System.out.println(a);
a*=2;
System.out.println(a);
}
3
4
2
4
'코딩 > JAVA' 카테고리의 다른 글
[1주차 3일] Chapter 4. 제어문-반복문(for) (0) | 2023.10.12 |
---|---|
[1주차 3일] Chapter 4. 제어문 (0) | 2023.10.12 |
[1주차 2일] Chapter 4. 제어문 (0) | 2023.10.11 |
[1주차 2일] Chapter2. 변수와 상수 (0) | 2023.10.11 |
[1주차 1일] Chapter 1. 자바의 시작 (0) | 2023.10.10 |
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday