//연산자 우선순위를 고려하지 않은 경우 ➡ 우선순위가 같은 식의 경우 왼쪽부터 차례대로 실행됨
System.out.println("num1 + num2 = " + num1 + num2 ); 👉🏻 "num1 + num2 = 166" 문자열 출력
➡ System.out.println("num1 + num2 = " + (num1 + num2) );
<산술연산자의 데이터타입>
System.out.println( 16 / 6 ); 👉🏻 2 int값
System.out.println( 16.0 / 6.0 ); 👉🏻 2.0 double값
<대입연산자>
int num1 = 11;
int num2 = num1; //num1 변수의 값 11을 활용하여 num3 변수공간에 대입
int num3, num4, num5;
num5 = num4 = num3 = num2;
👉🏻 num5 = 11
<산술대입연산자>
int num1 = 13, num2 = 14;
num2 += num1;
👉🏻 num2 = 27
<관계, 비교연산자>
int num1 = 10, num2 = 20;
boolean result = num1==num2;
👉🏻 result = false
<논리연산자>
boolean b1 = true, b2 = false;
System.out.println( b1 && b2 ); 👉🏻 false
System.out.pritnln( b1 || b2 ); 👉🏻 true
System.out.println( !(b1 && b2) ); 👉🏻 true
<증감연산자>
int num = 13;
System.out.println( num++ - 10 - ++num );
➡ num++ : 13 활용 후 14로 값 변경
➡ ++num : 15로 값 변경
👉🏻 -12
<Logical Test 02>
컴퓨터(프로그램)의 모든 작동
연산을 기호로 나타낸 것
연산의 대상 값 상수 변수 ...
피연산자의 개수
Binary Operator연산의 기능에 따른 분류
✔ Binary 이진의, 2개의 항, 이진법의 이루어진
.java+ - * / %
=의 오른쪽에 있는 값을 왼쪽에 있는 공간에 저장
+= -= *= /=
num2 += num1;
👉🏻 num2 = num2 + num1;
< > <= >= == !=
true false으로 리턴&& || !
&& ➡ ||, || ➡ &&으로 서로 치환됨false면 오른쪽 항의 연산을 수행하지 않음 👉🏻 결과값이 무조건 false이므로true면 오른쪽 항의 연산을 수행하지 않음 👉🏻 결과값이 무조건 true이므로+ 양수- 음수. 참조연산자! 논리부정연산자(type) 형변환연산자++ --
피연산자로 적용한 변수의 값을 1 증가, 감소시킴
데이터의 자료형을 일시적으로 다른 타입으로 변환하는 것 Type Casting / Casting
example📄
산술연산자는 피연산자의 자료형이 같아야하며, 연산결과도 같은 타입으로 반환
표현범위가 작은 데이터를 큰 데이터로 사용하려고 할 때 자동으로 변환됨
example📄
11 + 34.56 ( int + double )
👉🏻 11.0 + 34.56 ( double + double ➡ int 형을 double형으로 자동 형변환 )
👉🏻 45.56 ( double )
표현범위가 넓은 큰 데이터를 작은 데이터로 사용하려고 할 때 형변환 연산자를 사용하여 강제 형변환을 적용
(type) 데이터 형식으로 적용example📄
11 + (int) 34.56 ( int + (int) double )
👉🏻 11 + 34 ( int + int )
👉🏻 45 ( int )
boolean은 표현범위를 비교할 수 없음 👉🏻 형변환 되지 않음byte < short < int < long < float < double
char < int
코드를 한줄씩 실행하며 잘 수행되는지 확인할 수 있는 모드
F6는 코드를 한줄씩 실행