- 이항 연산자
이항 연산자
1. 산술 연산자 : +, -, *, /, %(나머지)
📌
package chap3;
public class OpEx3 {
public static void main(String[] args) {
int x=10,y=8;
System.out.println("10+8="+ (x+y));
System.out.println("10-8="+ (x-y));
System.out.println("10*8="+ (x*y));
System.out.println("10/8="+ (x/y)); //1 (소숫점 이하를 가질 수 없음.)
System.out.println("10%8="+ (x%y)); //2
// 나누기 몫
System.out.println(10/8); //1
System.out.println(-10/8); //-1
System.out.println(10/-8); //-1
System.out.println(-10/-8); //1
// 나누기 나머지 : 나머지 한 결과의 부호는 피젯수의 부호를 따른다.
System.out.println(10%8); //2
System.out.println(-10%8); // -2
System.out.println(10%-8); //2
System.out.println(-10%-8); // -2
}
}
2.비교연산자 (관계 연산자) : ==,!=,>,>=,... => 결과값은 bloolean
3. 논리 연산자 : &&(and),||(or) => bloolean && bloolean
- && 문장 : 앞쪽 구문의 결과가 F인 경우 뒤쪽 문장은 실행 하지 않는다.
T && T => T
T && F => F
F && T => F
F && F => F : 앞에 있는 값이 F이면 뒤의 결과와는 관계없이 F
- || 문장 : 앞쪽 구문의 결과가 T인 경우 뒤쪽 문장은 실행 하지 않는다.
T || T => T
T || F => T
F || T => T
F || F => F
📌
package chap3;
public class OpEx4 {
public static void main(String[] args) {
int x=1,y=1;
System.out.println("1 == 1 :"+ (x==y));
System.out.println("1 != 1 :"+ (x!=y));
System.out.println("1 >= 1 :"+(x>=y));
System.out.println("1 > 1 :"+ (x>y));
System.out.println("x == 1 && y == 2 :"+ (x==1 && y==2));
System.out.println("x == 1 || y == 2 :"+ (x==1 || y==2));
}
}
4. 비트 연산자 : &(AND), |(OR), ~(not),^(XOR)
아예 이진수로 변환시켜서 계산함.
📌
package chap3;
public class OpEx5 {
public static void main(String[] args) {
System.out.println(6 & 3);
/*
* 6 : 00000110
* 3 : 00000011
* & : 00000010 => 2
*/
System.out.println(6 | 3);
/*
* 6 : 00000110
* 3 : 00000011
* | : 00000111 => 7
*/
System.out.println(6 ^ 3);
/*
* XOR : 배타적 OR. 두개 값이 다른 경우 True(1), 같은경우 False(0)
* 6 : 00000110
* 3 : 00000011
* ^ : 00000101 => 5
*/
System.out.println(~10);
/*
* ~ : not : 0->1,1->0
* 10 : 00001010
* ~ : 11110101 => 음수. 2의 보수로 표현. -11의 표현
*
* 2의 보수 : 1의보수 + 1
* 보수의 보수 = 원래 숫자
* 11110101 => ? 2의 보수
*
* 11110101
* 1의 보수 00001010
* 2의 보수 1
* 00001011 => 11
*/
System.out.println(true & false); // false
}
}
5. 대입 연산자 : =,+=,-=,*=,....
오른쪽의 값을 변수의 값과 더한 뒤에 다시 변수에 저장한다.
a = 10 : a변수에 10이라는 값을 대입하여 저장.
a == 10 : a변수의 값이 10이니?
📌
package chap3;
public class OpEx7 {
public static void main(String[] args) {
int num=100;
System.out.println(num); //100
num+=10; // num = num +10
System.out.println(num); //110
num = num +10;
System.out.println(num); //120
num /= 10; //num = num / 10
System.out.println(num); // 12
num *= 5;
System.out.println(num); // 60
num -= 2+3; //num = num - (2+3)
System.out.println(num); //55
num %= 10; //num = num % 10
System.out.println(num); //5
}
}
'수업(국비지원) > Java' 카테고리의 다른 글
| [Java] chap3 : 연산자 - Exam 1-5 (0) | 2023.04.14 |
|---|---|
| [Java] chap3 : 연산자 - 삼항 연산자(조건) (0) | 2023.04.14 |
| [Java] chap3 : 연산자 - 단항 연산자 (증감 , 논리, 부호) (0) | 2023.04.14 |
| [Java] chap2 : 변수 - Exam (0) | 2023.04.14 |
| [Java] chap2 : 변수 - String 연산자 (0) | 2023.04.14 |