[JAVA] 산술연산자 (1)
사칙연산자
사칙연산자의 종류는 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