일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 이안의평일코딩
- 정보처리기사실기정리
- 정보처리기사정리
- 자바의정석
- 국비IT
- 리액트
- VUE
- 정보처리기사
- 정보처리기사실기요약
- react
- CSS
- ReactNative
- 평일코딩
- javascript
- 정보처리기사요약
- 자스코테
- 오라클
- 코딩테스트
- 국비코딩
- 스프링
- 자바스크립트
- spring
- 리액트네이티브
- 타입스크립트
- php
- 정보처리기사실기
- 자바스크립트 코딩테스트
- Java의정석
- typescript
- Oracle
- Today
- Total
이안의 평일코딩
JAVA의 정석 5일차 - 연산자2 본문
2020.06.19(금)
1. 단항연산자
(1) 증감연산자 (++, --)
(2) 부호연산자 (+, -)
(3) 부정연산자 (!)
(4) cast연산자 ((type))
2, 이항연산자
(1) 산술연산자 (+, -, *, /, %)
(2) 비트연산자 (비트와 비트를 연산 &, |, ^)
(3) 쉬프트연산자 (비트이동 연산자 <<, >>)
* 이항 결과값=>
산술 : 결과값을 알 수 없다
int+int = int
double + int = double
float+long = float
비교 : true/false =>조건문(if)에 쓰임
논리 : true/false =>조건문(if)에 쓰임
대입
(4) 비교연산자 : 수와 수를 비교 => 정수, 실수, 문자, 논리 (문자열은 비교할 수 없다)
"Hello"=="Hello" ===> equals()
=>문자열을 저장하는 데이터형 => String
char c = 'Hello' => String s = "Hello"
1) 종류
== : 같다 => 10==20 (false)
!= : 작지 않다 => 10!=20 (true)
< : 작다 => 10<10 (false)
> : 크다 => 10>10 (false)
<= : 작거나 같다 => 10<=10 (true)
10<10 || 10==10 || OR
>= : 크거나 같다 => 10>=10 (true)
10>10 || 10==10
2) 결과값
-> boolean (true/false)
(5) 논리연산자 : if문에서 주로 사용
형식) && (직렬), || (병렬)
======= ======
두개 true 한개이상 true
&& => 범위, 기간을 포함 (체크인 기간동안, 순차적으로 연결, 연속적)
|| => 범위나 기간을 벗어나는 경우에 주로 사용 (예약할 때, 날짜마다, 비연속적)
jumsu>=90 (&&) jumsu<=100
jumsu<=0 || jumsu>100
조건 (&&, ||) 조건
=== ===
true/false true/false
&& ||
=========================
true true true true
=========================
true false false true
=========================
false true false true
=========================
false false false false
6<5 && 10==10
=== ======
false && true ==> false
효율적인 연산을 함 (속도 빠르게 함)
int a=10;
int b=9;
a<b && ++b==a ==> false // 앞에것이 false이므로 뒤에것 계산하러 안감 (증가안함) =>효율적인 연산
=== ======
연산 수행 여부 (효율적인 연산)
단축 계산
&& ==> 첫번째 피연산자가 false면 다른 피연산자들을 계산하지 않는다
|| ==> 첫번째 피연산자가 true면 다른 피연사자들을 계산하지 않는다
b=?
(6) 대입연산자 : 결과값을 받는다
종류)
= -> int a = 10 -> 10을 a라는 메모리에 대입한다
복합대입연산자
op = -> op(연산자)
+=
-> 예)
int a = 10;
a+=2; -> a=a+2
a=12
-=
-> 예)
int a = 10;
a-=5; -> a=a-5
a=5
*=
-> 예)
int a = 10;
a*=5; -> a=a*5
a=50
/=
-> 예)
int a = 10;
a/=3; -> a=a/3
a=3
%=
-> 예)
int a = 10;
a%=3; -> a=a%3
a=1
& =
-> 예)
int a = 10;
a&=3 -> a=a&3 -> a=10&3
1010
0011
==== & and는 곱함
0010 -> 2
a=2
|=
-> 예)
int a = 10;
a|=3; -> a=a|3 -> a=10|3
1010
0011
===== | or는 더함
1011 -> 11
a=11
<<=
-> 예)
int a = 10;
a<<=3; -> a=a<<3 -> a=10<<3
=======
10*2^3
a=80
1010(000)
>>=
-> 예)
int a = 10;
a>>=3; -> a=a>>3 -> a=10>>3
=======
10/2^3
a=1
1(010)
한개증가 : 증가연산자
++
원하는 갯수만큼 증가 : 복합대입연산자
+=5
한개증가
a++
++a
a+=1
a=a+1
3. 삼항연산자
조건식 ? 식1 : 식2
조건식 참 => 식1
조건식 거짓 => 식2
4. 연산자 우선순위
1) ()
2) 단항연산자
3) 이항연산자
5. (int)(Math.random()*100)+1;
0.0~0.99 ->100 -> 0.0~99.0
(int)(0.0~99.0) -> (0~99)+1 -> 1~100
6. System.out.println(cc>='A' && cc<='z' ? "대문자":"소문자");
cc>='A' && cc<='Z' ==> 대문자
cc>='a' && cc<='z' ==> 소문자
'Back-end > Java' 카테고리의 다른 글
JAVA의 정석 7일차 - 연산자정리 & 조건문2 (0) | 2020.06.23 |
---|---|
JAVA의 정석 6일차 - 조건문 (0) | 2020.06.22 |
JAVA의 정석 4일차 - 연산자 (0) | 2020.06.18 |
JAVA의 정석 3일차 - 자바입출력메소드 (0) | 2020.06.17 |
JAVA의 정석 2일차 - 자바데이터형 (0) | 2020.06.17 |