JAVA 공부 1일차
JVM, 클래스, 인스턴스, 지역 변수
JAVA 기초
1) JAVA 변수
ㄱ. JAVA 변수 특징
- - 대소문자 구분
- - 예약어(true 등) 사용 불가
- - 숫자로 시작 불가
- - 특수문자는 _ 와 $ 만 허용
ㄴ. 변수의 형태
- - Camel case : varTest
- - Snake case : var_test
- - Pascal case : VarTest(Java 에는 클래스명만 대문자로 시작하자는 암묵 적인 규칙이 있어서 추천 X)
- - Kebab case : var-test(Java 에서는 변수명에 - 기호 사용 불가)
ㄷ. 기본형
- -정수형 default type : int
- -실수형 defalut type : double
ㄹ. 참조형
- - 기본형을 제외한 나머지 타입
- - String, System, Date 등이 있다.
2) 연산자
종류 | 연산자 | 설명 |
산술 연산자 | + - * / % <<>> | 사칙 연산과 나머지 연산(%) |
비교 연산자 | < >>= <= == != | 크고 작음과 같고 다름을 비교 |
논리 연산자 | && || ! &| ^ ~ | '그리고(AND)' 와 '또는(OR)' 으로 조건을 연결 |
대입 연산자 | = | 우변의 값을 좌변에 저장 |
기타 연산자 | (type) ?: instanceof | 형변환 연산자, 삼항 연산자, instanceof연산자 |
ㄱ. 증감 연산자
- - 전위형 : ex) k=++i; 참조 되기 전에 증가/감소시킨다.
- - 후위형 : ex) k=i++; 참조 된 후에 증가/감소시킨다.
- - 숫자로 시작 불가
- - 특수문자는 _ 와 $ 만 허용
ㄴ. 형변환 연산자와 자동 형 변환
- - 정수 실수 출력
int a = 10, b = 4;
System.out.println(a / b "); >> 2
System.out.println(a / (float)b); >> 2.5
ㄷ. 산술 변환
round() : 실수를 소수점 첫 째자리에서 반올림한 정수를 반환합니다.
ceil() : 올림값을 double 형으로 반환합니다.
floor() : 내림값을 double 형으로 반환합니다.
abs() : int, double 기본형 모두 사용 가능하며 절대값을 얻습니다.
ㄹ. 비트연산자
비트 연산자 | 설명 |
& | 대응되는 비트가 모두 1이면 1을 반환함. (비트 AND 연산) |
| | 대응되는 비트 중에서 하나라도 1이면 1을 반환함. (비트 OR 연산) |
^ | 대응되는 비트가 서로 다르면 1을 반환함. (비트 XOR 연산) |
~ | 비트를 1이면 0으로, 0이면 1로 반전 시킴. (비트 NOT 연산, 1의 보수) |
<< | 명시된 수만큼 비트들을 전부 왼쪽으로 이동시킴. (left shift 연산) |
>> | 부호를 유지하면서 지정한 수만큼 비트를 전부 오른쪽으로 이동시킴. (right shift 연산) |
>>> | 지정한 수만큼 비트를 전부 오른쪽으로 이동 시키며, 새로운 비트는 전부 0이 됨. |
ㅁ. 2진수의 음수표현
- - 부호 절대값 : 가장 왼쪽의 비트가 0이면 양수, 1이면 음수
ex) 3 = 00000011 , -3 = 10000011
- - 1의 보수 : 11111111 – x 는 x를 반전 시킨 것
ex) 13의 2진수는 00001101 > -13 = 11111111-00001101 = 11110010
- -2의 보수 : 가장 많이 사용하는 방식, 100000000-x 방식, 가장 왼쪽은 부호이며, 쉽게 계산하는 방법은 1의 보수에 +1을 해주는 것이다.
ex) -13 = 100000000 – 00001101 = 11110011
ㅅ. 대입 연산자
대입 연산자 | 설명 |
=
|
왼쪽의 피연산자에 오른쪽의 피연산자를 대입함.
|
+=
|
왼쪽의 피연산자에 오른쪽의 피연산자를 더한 후, 그 결괏값을 왼쪽의 피연산자에 대입함.
|
-=
|
왼쪽의 피연산자에서 오른쪽의 피연산자를 뺀 후, 그 결괏값을 왼쪽의 피연산자에 대입함.
|
*=
|
왼쪽의 피연산자에 오른쪽의 피연산자를 곱한 후, 그 결괏값을 왼쪽의 피연산자에 대입함.
|
/=
|
왼쪽의 피연산자를 오른쪽의 피연산자로 나눈 후, 그 결괏값을 왼쪽의 피연산자에 대입함.
|
%=
|
왼쪽의 피연산자를 오른쪽의 피연산자로 나눈 후, 그 나머지를 왼쪽의 피연산자에 대입함.
|
&=
|
왼쪽의 피연산자를 오른쪽의 피연산자와 비트 AND 연산한 후, 그 결괏값을 왼쪽의 피연산자에 대입함.
|
!=
|
왼쪽의 피연산자를 오른쪽의 피연산자와 비트 OR 연산한 후, 그 결괏값을 왼쪽의 피연산자에 대입함.
|
^=
|
왼쪽의 피연산자를 오른쪽의 피연산자와 비트 XOR 연산한 후, 그 결괏값을 왼쪽의 피연산자에 대입함.
|
<<=
|
왼쪽의 피연산자를 오른쪽의 피연산자만큼 왼쪽 시프트한 후, 그 결괏값을 왼쪽의 피연산자에 대입함.
|
>>=
|
왼쪽의 피연산자를 오른쪽의 피연산자만큼 부호를 유지하며 오른쪽 시프트한 후, 그 결괏값을 왼쪽의 피연산자에 대입함.
|
>>>=
|
왼쪽의 피연산자를 오른쪽의 피연산자만큼 부호에 상관없이 오른쪽 시프트한 후, 그 결괏값을 왼쪽의 피연산자에 대입함.
|