티스토리 뷰
변수에 이어 연산자를 알아보도록 하겠습니다.
연산자는 프로그래밍언어에서 가장 기본적이면서도 중요한 요소입니다.
종류 |
연산자 |
단항 연산자 |
++ , -- , + , - , ~ , ! |
산술 연산자 |
* , / , % |
+ , - | |
<< , >> , >>> | |
비교 연산자 |
> , < , >= , <= , instanceof |
== , != | |
논리 연산자 |
& |
^ | |
! | |
&& | |
|| | |
삼항연산자 |
___?___:___ |
대입 연산자 |
= , *= , /= , %= , += , -= , <<= , >>= ,>>>= , &= , ^= . |= |
연산자의 진행방향이 있지만 일반적인 수학계산에서 사용되는 ( )를
사용하여 먼저 계산해야할 것 부터 괄호 ()로 묶어주면
진행방향을 따로 공부할 필요는 없다고 판단되어 표를 작성했습니다.
이러한 연산자가 있으며 아래 실습 예제를 통해 공부하시면 됩니다.
public class OperatorExample { public static void main(String[] args) { // 단항, 산술 연산자 예제 int a = 10; a++; // 후위 증가 (세미콜론을 지나가면 1 증가) -> a = 10; System.out.println(a); // a => 11 int b = 10; ++b; // 전위 증가 (세미콜론을 만나기 전에 1 증가) -> b = 11; System.out.println(b); // b => 11 int c = 10; int d = 10; System.out.println(c++); // c => 10 System.out.println(++d); // d => 11 int e = 0; System.out.println(e++); //0 System.out.println(++e); //2 System.out.println(e--); //2 System.out.println(e--); //1 System.out.println(++e); //1 System.out.println(--e); //0 System.out.println(2+2*2); //곱셈이 우선 순위가 높기 때문에 2*2 부터 실행 // 2+2*2 먼저 계산을 원하는 곳에 괄호()를 사용하여 우선순위 적용할 수 있다. => (2+2)*2 = 8 , 2+(2*2) = 6 System.out.println(2+2/2*3+2/1-3+1/4*2); System.out.println(2+((2/2)*3)+(2/1)-3+((1/4)*2)); //메모리 크기에 따른 나눗셈 System.out.println(5/2); // 몫 구하기 System.out.println(5%2); // 나머지 구하기 // 형변환을 사용한 나눗셈 System.out.println((double)5/2); System.out.println(5/(double)2); System.out.println((double)(5/2)); // 비교, 논리, 삼항, 대입 연산자 예제 int num1 = 10; int num2 = 5; System.out.println(num1 > 10); //false => num1이 10보다 큰가? System.out.println(num1 >= 10); //true => num1이 10보다 크거나 같은가? System.out.println(num2 < 10); //true System.out.println(num2 < num1);//num2가 가지고 있는 값이 num1이 가지고 있는 값보다 작은가? // = -> 대입연산 // == : 왼쪽에 있는 값이 오른쪽에 있는 값과 같은가? // != : 왼쪽에 있는 값이 오른쪽에 있는 값과 다른가? (부정) System.out.println(num1 == 10); // num1의 값이 10과 같은가? System.out.println(num1 != 10); // num1의 값이 10과 같지 않은가? System.out.println(num1 != num2); // num1이 5보다 크고, 10보다 작거나 같은가? ==> true System.out.println(num1 > 5 && num1 <= 10); // num2가 5보다 작거나 같거나 num2가 10보다 큰가? ==> true System.out.println(num2 <= 5 || num2 >10); // 5<num<10 ==""> 잘못된 문법 // && (AND) : 왼쪽이 거짓이면 오른쪽 연산은 수행하지 않는다. // || (OR ) : 왼쪽이 참이면 오른쪽 연산은 수행하지 않는다. // 조건연산자 (삼항연산자) // num1이 num2보다 크다면 num3에 10을 집어 넣고 // 아니면 num3에 20을 집어 넣어라. // 조건 (비교, 논리) -> boolean이 결과물 ? 참일때 실행할 문장 : 거짓일 때 실행할 문장 ; int num3 = num1 >num2 ? 10 : 20; System.out.println(num3); int num4 = 5; num4 +=5; //num4 = num4 + 5 System.out.println(num4); num4 -= 10; //num4 = num4 - 10 num4 *= 1; // num4 = num4 *1 } }
반응형
LIST
'프로그래밍 > Java' 카테고리의 다른 글
자바 ! 접근 지시 제어자 (private, default, protected, public) (0) | 2017.04.20 |
---|---|
자바 ! 객체지향 프로그래밍 (0) | 2017.04.18 |
자바 ! 반복문 (for, while, do~while) (0) | 2017.04.17 |
자바 ! 조건문 ( if문 , switch~case문) (1) | 2017.04.14 |
자바 ! 변수 (기본자료형, 참조자료형, 자료의 형변환) (0) | 2017.04.12 |
댓글