
- 연산자
프로그램에서 데이터를 처리하여 결과를 산출한다.
연산에 사용되는 표시나 기호를 의미한다.
- 산술 연산자
+, -, *, /, %( 모듈러스, 나머지 연산)
- 증감 연산자
변수의 값을 1증가 시키거나 1감소 시키는 연산자
++변수 : 다른 연산을 수행하기 전에 값을 1증가시킨다. (--변수)
변수++ : 다른 연산을 먼저 수행한 후 값을 1증가시킨다. (변수--)
- 대입 연산자
값을 변수에 저장해주는 연산자
=, +=, -=, *=, /=, %=
증감, 대입 연산자 사용해보기!
public static void main(String[] args) {
int var1 = 10, result = 10;
System.out.println("현재 var1의 값 : " + var1);
System.out.println("현재 var1의 값 : " + ++var1);
System.out.println("현재 var1의 값 : " + var1);
System.out.println("현재 var1의 값 : " + var1++);
System.out.println("현재 var1의 값 : " + var1);
result = result++;
System.out.println("현재 result의 값 : " + result);
result = var1++;
System.out.println("현재 var1의 값 : " + var1);
}
reslut = result++; 의 경우 먼저 10이 대입되고 ++(증감)이 처리할 수 없어서 값이 날라가기 때문에 10이 출력된다.
public static void main(String[] args) {
int var1 = 100, var2 = 100, var3 = 100, var4 = 100, var5 = 100;
var1 += 100;
var2 -= 100;
var3 *= 100;
var4 /= 100;
var5 %= 100;
System.out.println("var1 += 100 : " + var1 );
System.out.println("var2 -= 100 : " + var2 );
System.out.println("var3 *= 100 : " + var3 );
System.out.println("var4 /= 100 : " + var4 );
System.out.println("var5 %= 100 : " + var5 );
}
- 논리 연산자
&&, ||,. ^(XOR), !
※ XOR은 두개의 입력이 같으면 true, 틀리면 false을 반환
AND 연산
boolean && boolean : 둘 다 모두 true일 때 true
A | B | 결과 |
true | true | true |
true | false | false |
false | true | false |
false | false | false |
OR 연산
boolean || boolean : 둘 중 하나가 true이면 true
A | B | 결과 |
true | true | false |
true | false | true |
false | true | true |
false | false | false |
NOT 연산
!boolean : true이면 false, false이면 true
A | 결과 |
true | false |
false | true |
- 비트 연산자
&, |, ^, <<, >> (쉬프트 연산자)
&(and 연산)
먼저, 10진수 28을 2진수로 변환
32 16 8 4 2 1
1 1 1 0 0
28(10) -> 11100(2)
그리고 10진수 25를 2진수로 변환
32 16 8 4 2 1
1 1 0 0 1
25(10) -> 11001(2)
11100 & 11001 = 11000 으로나온다. 11000(2) -> 24(10)
<< , >> (쉬프트 연산)
28 << 2
1 1 1 0 0 (28)
1 1 1 0 0 0 0 (28 << 2)
---------------------------------------------------------------------------------------------------------------------------------
64 32 16 8 4 2 1 = 112(10)
- 삼항 연산자
3개의 피연산자를 필요로 하는 연산자이먀, 앞의 조건식에 따라 콜론(:) 앞 뒤의 피연산자가 선택된다.
조건식 ? 값1 : 값2
조건식이 true이면 값1을 선택, false이면 값2를 선택한다.
실습하기!
public static void main(String[] args) {
/* 성적 프로그램
1. 3과목 이상의 변수를 만들어 값을 저장
ex) kor = 80;
2. 위 점수를 변수에 저장하고 총점과 평균, 합격 여부를 구함
단, 합격 여부는 평균을 기준으로 60점 이상은 합격, 미만은 불합격
3. 합격 여부는 삼항연산자를 활용*/
int kor = 80;
int math = 98;
int eng = 89;
int sum = (kor + math + eng);
double avg = sum / 3;
System.out.println("총점 : " + sum
+ " 평균 : " + avg);
System.out.println(avg >= 60 ? "합격" : "불합격");
}
삼항 연산자는 값으로 반환되기때문에 바로 프린트문에 넣어서 출력할 수있다.
'국비 > JAVA' 카테고리의 다른 글
DAY 05 : 메소드, 객체지향 프로그래밍, 클래스, 생성자 (0) | 2022.10.04 |
---|---|
DAY 04 : 2차원 배열, 향상된 for문, String클래스 (1) | 2022.10.03 |
DAY 03 : 반복문, 중첩 반복문, 배열 (0) | 2022.10.03 |
DAY 02 : 타입 변환, Scanner, String 클래스, 제어문 (0) | 2022.09.28 |
DAY 01 : JAVA, 주석, 변수 (1) | 2022.09.23 |