728x90
반응형
SMALL

(1) 대입연산

=, +=, -=, *=, /= R) a = 3, a <= 3, 3 => a //통계에서 쓰이는 ‘R’ a = a + 1; a += 1; = : 왼쪽에 오른쪽을 넣으시오.

=(오른쪽과 왼쪽이 대립), +=(오른쪽 것을 더해서 왼쪽에 넣는 방법//많이 쓰임) -=(오른쪽에서 빼서 왼쪽에 넣기) *=, /=

a = a + 1; a + = 1; = : 왼쪽에 오른쪽에 넣으시오.

package Day02;

public class OperExample {
	public static void main(String [] args) {
	//  TODO Auto-generated method stub
	p("Oprtation Test");

	// 1-1. 대입연산
		int num = 10;
		p("1.num(=) " + num);

	// 1-2. 대입연산
		num += 10;
		p("2-1.num(+=) " + num);
		num -= 10;
		p("2-2.num(-=) " + num);
		
	// 1-3. 대입연산
		num *= 10;
		p("3-1.num(*=) " + num);
		p("3-2.num(*=) " + (num*=10));
		p("3-3.num() " + num);

(2) 산술연산

우리가 알고 있는 (+ - * /), 나머지를 구하는 %, 주민번호 뒷자리 3개 %33

10 % 3 = 1, 10 / 3 = 3

//4. 산술연산 num = 5 + 5 * 2; p("4-1. 5 + 5 * 2 =" + num); num = 5 * (5 + 2); // 4(4+2) p("4-2. 5 * (5 + 2) = " + num);

//2-1. 산술연산
	num = 5 + 5 * 2;
	p("4-1. 5 + 5 * 2 =" + num);
	num = 5 * (5 + 2);     // 4(4+2)
	p("4-2. 5 * (5 + 2) = " + num);	
	
	int num_of_grp = 3;
	num = 35 % num_of_grp;
	p("4-3. 35 % 3 =" + num);

// 2-2. 나누기 
		num = 10 / 4;
		p("5. 10 / 4 = " + num);
		//num = 10. 4 ; //실수를 int에 넣을 수 없음
		// num이 int이기 때문에 앞에 큰 값이 오면 안됨!!
		float num_f = (float)10. / 4;  // 10. / 4;를 넣으면 오류나기에 float를 넣어줘야함
		
// 2-3. 0으로 나눠보기
		//num = 10 / 0; // Inf(무한대를 의미 )
		//Exception in thread "main" java.lang.ArithmeticException: / by zero
		//at Day02.OperExample.main(OperExample.java:43)
		//0으로 나누기 때문에 오류가 나오지만, 예외처리를 해서 0이 아닌 1로 처리할려고 하는 의미이다.

(3) 증감연산

++, --

++ : 1증가

-- : 1 감소

a = 10;
b = a++;   print(b) >10  b = a; a++;
//++이 뒤에 붙어있으면 a가 먼저 계산을 한 후에 처리되기 때문에 이미 b=10이 되었음
b = ++a;   print(b) >11 //++이 앞에 붙어있으면 1+a가 되기 때문에 11이 됨
순서가 헷갈릴 수 있으니 분리해서 작성하는 것을 추천!!

// 3. 증감연산
	int a = 10;
	int b = 10;
	a++;
	++b;
	p("7-1. a++, ++b -> " + a + " " + b);
	
	int x = a++;
	int y = ++b;
	p("7-2. a++, ++b -> " + x + " " + y);

(4) 비교연산

a > b : a가 b보다 크면 true, 아니면 false

    a=5 if (a=1) { printf(”OK”); } //C에서는 a에 1을 넣는것이 가능하지만, 파이썬은 안됨!

a >= b, a < b ..... a == b : 같으면 true, 다르면 false

a != b : 다르면 true

    ['=='같으면에서 2개를 사용했기 때문에 '!=' 다르면에서도 2개를 사용한 것]
// 4. 비교연산
	a = 10; b = 5;
	p("8-1. 10 > 5 : " + (a>b));
	p("8-2. 10 < 5 : " + (a<b));
	p("8-3. 10 == 5 : " + (a==b));
	p("8-4. 10 != 5 : " + (a!=b));
	p("8-5. 'a' > 'b' : " + ('a'>'b'));

(5) 논리연산

A && B : A와 B가 모두 true이면 true 111 & 110 = 110

A || B : A 또는 B가 true이면 true

A ^ B : A와 B가 다르면 true(XOR, Exclusive OR

A ^ B : A와 B가 다르면 true(XOR, Exclusive OR)

!A : 무조건 A의 반대

// 5. 논리연산
	p("9-1. true && false : " + (true && false));
	p("9-2. true \\\\ false : " + (true || false));
	p("9-3. true ^ true : " + (true ^ true));
	p("9-4. !true : " + (!true));

(6) 삼항연산

A ? B : C : A가 true이면 B, false이면 C

cf) python A ? AND B OR C

// 10. 삼형연산자
		int score = 80;
		String dad1 = (score>60)? "잘했다." : "돼다";
		String dad2 = (score>99)? "당연" : "이것도점수냐";
		p("10. dad1 = " + dad1 + " dad2 = " + dad2);
		
	}
	garbage in g
	
	public static void p(String str) {
		System.out.println(str);
		
	}
 
 
728x90
반응형
LIST

'개발 > JAVA' 카테고리의 다른 글

Random (임의의 수를 얻는 도구)  (0) 2023.01.09
User Input (사용자로부터 입력을 받는 기능)  (0) 2023.01.09
class first  (0) 2023.01.09
변수(Variable)  (0) 2023.01.09
주석(comment)  (0) 2023.01.09

+ Recent posts