Java/Java 이론

[JAVA] 산술연산자 (1)

2주녘 2023. 7. 26. 10:52
반응형

사칙연산자

사칙연산자의 종류는 5종류가 있으며 아래와 같다.

연산자 기능 연산 예
+ 두 항을 더한다 5 + 3
- 앞에 있는 항에서 뒤에 있는 항을 뺀다 5 - 3
* 두 항을 곱한다 5 * 3
/ 앞에 있는 항에서 뒤에 있는 항을 나누어 몫을 구한다 5 / 3
% 앞에 있는 항에서 뒤에 있는 항을 나누어 나머지를 구한다 5 & 3

사칙연산 실습예

package ch03;

 

public class MainTest3 {

 

// 메인함수 - 코드의 시작점 : 메인 쓰레드(일을 하는 작업자)

public static void main(String[] args) {

 

// 산술 연산자 연습

int number1 = 5 + 3;

int number2 = 5 - 3;

int number3 = 5 * 3;

 

int number4 = 5 / 4;

 

int number5 = 5 % 3;

 

System.out.println(number1);

System.out.println(number2);

System.out.println(number3);

System.out.println(number4);

System.out.println(number5);

 

System.out.println("-----------------------------");

 

// 문제

// 1. (12 + 3) / 3 값을 화면에 출력하시오

int number6 = (12 + 3) / 3;

System.out.println(number6);

// 2. (25 % 2) 값을 화면에 출력하시오.

int number7 = 25 % 2;

System.out.println(number7);

 

int number10 = (int) (5.0 / 4.0);

System.out.println("===================");

System.out.println(number10);

 

} // end of main

 

} // end of class

[출력값]

8

2

15

1

2

-----------------------------

5

1

===================

1

복합 대입 연산자

대입 연산자와 다른 연산자가 함께 쓰인다.

연산자 기능 연산 예
+= 두 항의 값을 더해서 왼쪽 항에 대입 num1 += 2;
num1 = num1 + 2; 와 같음
-= 왼쪽 항에서 오른쪽 항을 빼서 그 값을 왼쪽 항에 대입 num1 -= 2;
num1 = num1 - 2; 와 같음
*= 두 항의 값을 곱해서 왼쪽 항에 대입 num1 *= 2;
num1 = num1 * 2; 와 같음
/= 왼쪽 항을 오른쪽 항으로 나누어 그 몫을 왼쪽 항에 대입 num1 /= 2;
num1 = num1 / 2; 와 같음
%= 왼쪽 항을 오른쪽 항으로 나누어 그 나머지를 왼쪽 항에 대입 num1 %= 2;
num1 = num1 % 2; 와 같음

복합 대입 연산자 실습예

package ch03;

 

public class MainTest4 {

 

public static void main(String[] args) {

 

// 복합 대입 연산자

// 대입 연산자와 다른 연산자랑 함께 쓰인다.

 

int num1 = 1;

// num1 = num1 +10;

num1 += 10;

System.out.println(num1);

 

int num2 = 1;

// num2 = num2 + 100;

num2 += 100; // 위 식을 간소화 한것.

System.out.println(num2);

 

int num3 = 1;

// num3 -= 10;

// 위 식을 반대로 풀어서 코드작성

num3 = num3 - 10;

System.out.println(num3);

 

// num1 = num1 * 2;

// 위 식을 복합연산자로 변경하면

num1 *= 2;

System.out.println(num1);

 

// num2 = num2 / 2;

// 위 식을 복합연산자로 변경

num2 /= 2;

System.out.println(num2);

 

// num2 = num2 % 2;

// 위 식을 복합연산자로 변경

num2 %= 2;

System.out.println(num2);

 

} // end of main

 

} // end of class

증감, 감소 연산자

  • 단항 연산자
  • 변수의 값을 1 더하거나 1 뺄때 사용
  • 연산자의 항의 앞에 있는가 뒤에 있는가에 따라 연산 시점의 결과가 달라진다.
  • 문장(statement)의 끝(;)을 기준으로 연산 시점을 생각해야함
연산자 기능 연산 예 (연산자가 앞/뒤에 오는 것에 따라 결과가 달라져요!)
++ 항의 값에 1을 더한다 val = ++num; // 먼저 num 값이 1 증가 후 val 변수에 대입
val = num++; // val 변수에 num 값 대입 후 num 값 1증가
-- 항의 값에 1을 뺀다 val = --num; // 먼저 num 값이 1 감소 후 val 변수에 대입
val = num--; // val 변수에 num 값 대입 후 num 값 1감소

증감, 감소 연산자 예제

package ch03;

 

public class MainTest5_2 {

 

public static void main(String[] args) {

 

// 증감, 감소 연산자 - 모양 : 변수 기준으로 앞에 사용, 뒤에 사용 가능하다. (주의 점은 오직 1만 더하거나 빼는 것)

 

// 1. 증가 연산자가 뒤에 올 경우

int num1 = 10;

num1++;

 

// 응용

int num2 = 10;

int num3;

 

num3 = num2++;

System.out.println(num3);

System.out.println(num2);

 

System.out.println("=================");

 

// 2. 증가 연산자가 앞에 올 경우

 

int num20 = 100;

int num21;

 

num21 = ++num20;

System.out.println(num20);

 

} // end of main

 

} // end of class

package ch03;

 

public class MainTest5_3 {

 

public static void main(String[] args) {

 

// 증감, 감소 연산자 - 모양 : 변수 기준으로 앞에 사용, 뒤에 사용 가능하다. (주의 점은 오직 1만 더하거나 빼는 것)

 

// 1. 감소 연산자가 뒤에 올 경우

int num1 = 10;

num1--;

 

// 응용

int num2 = 10;

int num3;

 

num3 = num2--;

System.out.println(num3);

System.out.println(num2);

 

System.out.println("=================");

 

// 2. 감소 연산자가 앞에 올 경우

 

int num20 = 100;

int num21;

 

num21 = --num20;

System.out.println(num20);

 

} // end of main

 

} // end of class

반응형