티스토리 뷰

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
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday