연산자
특정 값이나 다른 변수의 결과를 할당(대입)한다.
대입연산자 =
부호 연산자 + -
산술 연산자 + - * /
증감 연산자 ++ --
부호연산자
package ch02;
public class Operation1 {
/*
부호 연산자 + -
단항 연산자라고도 한다.
부호 연산자는 사용하는 부호를 변경할 뿐
실제 값이 변경되는 것은 아니다.
*/
//entry
public static void main(String[] args) {
int intData = 1000;
System.out.println("양수값: " + +intData);
System.out.println("음수값: " + -intData);
System.out.println(intData);
// 변수의 값에는 변화가 없는 것을 확인할 수 있다.
// 만약 실제 값을 변경하려면 어떻게 해야 할까?
// 메모리 공간 안에 있는 실제 값을 변경해야 한다.
// 대입 연산자 =
intData = -intData;
// 변수 값 자체가 변화한 것을 확인할 수 있다.
System.out.println(intData);
/*
절대값
어떤 수의 크기를 나타내는 것
그 수가 0에서 얼마나 떨어져있는지를 보여준다.
양수이든 음수이든 항상 양수로 표시된다.
*/
// 연습
int oneStepDistance = 1;
final int ZERO_POINT = 0;
int currentPosition = 0;
// 제로 포인트에서 왼쪽으로 3칸 이동한 값을 출력하시오
currentPosition = ZERO_POINT - (oneStepDistance * 3);
System.out.println(currentPosition);
/*
절대값으로 구하려면?
자바에서는 풍부한 추가기능을 제공하고 있다.
자바 개발자들이 수학 관련 식들을 준비해뒀다.
Math.abs()
절대값 구하는 기능이다.
*/
System.out.println("절대값: " + Math.abs(currentPosition));
} // end of main
}

산술연산자
package ch02;
public class Operator1 {
/*
산술연산자 + - * /
*/
// entry
public static void main(String[] args) {
int a = 5;
int b = 2;
// 덧셈
int sum = a + b;
System.out.println("a + b = " + sum);
// 뺄셈
int diff = a - b;
System.out.println("a - b = " + diff);
// 곱셈
int multi = a * b;
System.out.println("a * b = " + multi);
// 나눗셈
// double div = a / b;
// System.out.println("a / b = " + div);
// div = 2
// 데이터 손실이 발생했다.
// 나눗셈을 계산할 때는 실수로 계산해야 정확한 결과 값이 나온다.
// ----div = 실수 / 실수
// double div = 5.0 / 2.0;
// double div = (double)a / (double)b;
//한편 두 항중에 하나라도 실수면 연산의 결과도 실수도 처리된다.
double div = a / (double)b;
System.out.println("a / b = " + div);
// 나머지
double mod = (double)a % b;
System.out.println("a % b = " + mod);
// 연습
// (12 + 3) / 3 의 값을 구하라
System.out.println((12 + 3) / (double)3);
// 연습
// (25 % 2) 의 값을 구하라
System.out.println(25 % 2); // 1 홀수로 판별
System.out.println(26 % 2); // 0 짝수로 판별
System.out.println(27 % 2); // 1 홀수로 판별
// 한편 어떤 수를 2로 나누었을 때
// 나머지가 0이면 짝수로 판별 가능하다.
} // end of class
}

상수
자료형
산술연산자
활용한 응용문제
package exercise;
public class Exercise4 {
// entry
public static void main(String[] args) {
/*
원래 가격은 59.99$
30% 할인을 적용
최종가격을 계산해 소수점 이하는 버린다.
상수 선언
final double ORIGIN_PRICE = 59.99;
final double DISCOUNT_RATE = 0.30;
---------최종가격 = 원가 * (1 - 할인율)
int discountPrice = ORIGIN_PRICE (1 - DISCOUNT_RATE);
System.out.println(discountPrice);
*/
final double PRICE_OLD = 59.99;
final double DISCOUNT = 0.3;
int price_new = (int)(PRICE_OLD * (1 - DISCOUNT));
System.out.println("최종가격은: " + price_new); // 41
} // end of main
}// end
package exercise;
public class RectangleAreaCalculaor {
// entry
public static void main(String[] args) {
/*
사각형의 면적을 구하라
상수를 선언할 것
주석을 작성하는 습관을 들이면 좋다.
사각형의 가로길이, 세로길이를 선언
final int WIDTH = 10;
final int HEIGHT = 5;
면적 area = 가로길이 * 세로길이
int area = WIDTH * HEIGHT;
*/
final int DATA_X = 5;
final int DATA_Y = 10;
int area = DATA_X * DATA_Y;
System.out.println("사각형의 면적: " + area); // 50
} // end of main
} // end
package exercise;
public class TriangleAreaCalculator {
// entry
public static void main(String[] args) {
/*
삼각형의 면적을 구하는 코드를 작성해보자
area = WIDTH * HEIGHT / 2
*/
final double BASE = 10.0; // R value / 값 / 리터럴
final double HEIGHT = 5.0;
double area = ( BASE * HEIGHT ) / 2;
System.out.println("삼각형의 면적은: " + area);
} // end of main
} // end
증감연산자
package ch02;
public class Operator2 {
/*
증감 연산자 ++ --
변수에 접근해서 그 값을 오직 1 증가(감소)시킨다.
*/
// entry
public static void main(String[] args) {
int a = 1;
a++; // 오직 1을 증가시킨다.
System.out.println("a: " + a); // a = 2
int b = 1;
b--; // 오직 1을 감소시킨다.
System.out.println("b: " + b); // b = 0
/*
감소 연산자를 앞에 사용하면 전위 감소 연산자
감소 연산자를 뒤에 사용하면 후위 감소 연산자
세미콜론 ; 기준으로
즉 문장의 끝 기준으로
연산의 시점이 달라진다.
*/
int c = 100;
System.out.println(c--); // c = 100
System.out.println(c); // c = 99
System.out.println(--c); // c = 98
} // end of main
}

'Java' 카테고리의 다른 글
| 반복문 for (0) | 2025.04.14 |
|---|---|
| 자료의 형 변환 - 강제형변환 (0) | 2025.04.10 |
| 명령프롬프트를 통한 자바 실행 방법 (0) | 2025.04.10 |
| 데이터타입 - 논리형 (0) | 2025.04.10 |
| 데이터타입 - 실수형 (0) | 2025.04.10 |