메모장

변수 , 연산자 본문

JAVA/개념정리

변수 , 연산자

Itchild 2024. 4. 6. 14:13
728x90
반응형

변수

 

코드나 정보 등을 '저장'해두고, 나중에 다시꺼내어 쓸수는없을까??? 라는 생각이 들때 사용할수 있는것 -> 변수 !

 

데이터를 저장하는 공간 == "변수"

 

변수의 3요소

 

1. 공간

 

2. 주소

 

3. 주소를 뭐라고 부를지에 대한 "이름"

 

---------------------------------------------------

 

1. 공간

 

자료형(data type)

 

정수 int ex ) 4, 0, -200 4byte

 

실수 double ex)1.2 -3.4 0.12 3.0 8byte

 

문자 char ex) 'A' 'z' '+'

 

문자열 String ex) "apple" "홍길동"

 

진위형 boolean ex) T / F

 

 

2. 주소

 

JAVA는 JVM을 사용하는데, JVM은 공간을 관리해주는 역할을 한다.

 

자동으로 공간을 지정해준다~~~

 

주소는 공간을 할당하면 즉시 임의로 지정됨 --->> @ 해쉬값으로 지정돼버린다.

 

ex) class05.A@7d6f77cc

 

이런 이름으로 변수를 호출하기가 어렵다.

 

 

3. 이름 == 변수명이라 생각

 

 

변수 이름 규칙(식별자 규칙)

 

1) 영어+숫자 조합

 

2) _ 허용

 

3) 숫자로 시작 xxxxx

 

4) 소문자로 시작 ( 대문자로 시작하는건 Class니까 )

 

(예시)

 

apple01 가능 o (영어부터 시작)

 

apple_02 가능 o (_ 언더바 사용 가능)

 

01banana 불가 x (숫자가 앞에 왔으므로)

 

Banana 불가 x (대문자는 클래스만 )

 

apple banana 불가 x (띄어쓰기는 불가)

 

 

 

연산자

출처 입력

 

1) 대입 연산자 ' = '

 

변수공간 = 값; -> "값을 변수공간에 저장해주세요."라는 뜻

 

: 일반적으로 대입 연산자는 우선순위가 낮은편이다.

 


2) 산술 연산자 ' + - * / % '

 

/ INT 몫 연산자

 

10/3 -> 3 : 소수점뒤의 value를 버림하여 3만 저장된다.

 

value를 버림 == 데이터 손실

 

% MOD 나머지 연산자

 


"연산자 우선순위" -------> 중요 !!

 

" 최단산쉬관리삼대 " 라고 외웠다.

 

최우선 연산자

 

단항 연산자

 

산술 연산자

 

쉬프트 연산자

 

관계 연산자

 

리(논리) 연산자

 

삼항 연산자

 

대입연산자

 


3) 증감 연산자

 

a. 전위 증감연산자 ++data; , --data; 우선순위가 매우 높음

 

 

b. 후위 증감연산자 data++; , data--; 우선순위가 매우 낮음

 

1씩 증가/감소시켜주는 연산자

 

 

[ 문제 ]

 

 

int a=20;

 

int b=30;

 

int c=++a - b--;

 

int d=a-- * ++c;

 

 

a,b,c,d의 값은???

 

 

a b c d

 

----------------------------------------------------------------------------------------------

 

20 30 c=++a-b-- d=a--*++c

 

앞부터 정리 : 대입,전위,산술,후위 앞부터 정리: 대입,후위,산술,전위

 

순서정리 : 전위,산술,대입,후위 순서정리 : 전위,산술,대입,후위

 

21 29 -9

 

-8

 

-168

 

20

 

 

따라서 a = 20, b = 29, c = -8, d = -168 이다 !

 


 

4) 비교 연산자

 

> < >= <= == !=

 

코드에서 ! NOT(부정)

 

-> 연산자 수행결과를 T/F(진위형,boolean)으로 반환

 


5) 논리 연산자

 

나이가 19살이상부터 45살미만까지만 가능하다.

 

int age; // 나이라는 value를 저장할 변수 공간

 

age>=19 그리고,~이면서,AND age<45

 

-> &&

 

 

가격이 1,000원이하 이거나 혹은 20,000원 초과된 상품인가요?

 

int price; // 가격이라는 value를 저장할 변수 공간

 

price<=1000 ~이거나,혹은,또는,OR price>20000

 

-> ||

 


6) 조건(삼항) 연산자

 

조건 ? 참 : 거짓

 

ex) 10>5 ? 1 : 2

 

-> 1이 반환됨

 

ex) 10<5 ? 1 : 2

 

-> 2가 반환됨

 

ex) 100==100 ? 123 : 321

 

-> 123이 반환됨

 

 

 

 

728x90
반응형

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

Scanner  (0) 2024.04.06
반복문 (for문)  (0) 2024.04.06
반복문 (while문)  (0) 2024.04.06
함수 (메서드)  (0) 2024.04.06
배열  (0) 2024.04.06