[Java] 2020.10.23. day 3_진수 변환, Wrapper Class(API), 연산자
2020. 10. 23. 17:28ㆍWeb_Back-end/Java SE
◎ Constant
- 변수를 상수처럼 사용할 때(가독성 향상, 값을 변경하지 못하게 막을 때)
- 프로그램에서 사용할 기준 값을 설정할 때
- class field에만 정의할 수 있다
- Constant의 값은 선언할 때에만 할당 가능하다
- Constant의 이름은 주로 대문자로 설정
- API 문서에서 찾을 때에는 field로 찾는다
- 문법)
- public static final 데이터형 상수명=값;
- public 클래스 외부에서 사용가능
- static 모든 메모리에서 접근가능
- final 값 변경 불가
- 데이터형 상수명 기본형 데이터형, 참조형 데이터형
- public static final 데이터형 상수명=값;
- Constant 의 사용
- 클래스 안에서 사용
- Constant 명
- 클래스명, Constant명
- 외부 클래스에서 사용
- 클래스명, Constant명
- 클래스 안에서 사용
◎ 진수
- 서로 다른 모양의 숫자 몇 개를 가지고 모든 수를 표현하는가
2진수 - … 2⁴ 2³ 2² 2¹ 2⁰ => … 16 8 4 2 1 |
||||
바꾸는 진수 | 값 | 과정 | 2진수로 표현 | |
10진수 | 24 | 10진수는 24 그대로의 값을 의미한다 | 11000⑵ | |
8진수 | 57⑻ | 5/7 | 101⑵ / 111⑵ | 101111⑵ |
16진수 | 37a⒃ | 3/7/10 | 11⑵ / 111⑵ / 1010⑵ | 0011 0111 1010⑵ |
8진수 - … 8⁴ 8³ 8² 8¹ 8⁰ => … 4096 512 64 8 1 |
||||
바꾸는 진수 | 값 | 과정 | 8진수로 표현 | |
10진수 | 24 | ① 2진수로 바꾼다 | ② 11000⑵→011/000 | 30⑻ |
2진수 | 101111⑵ | 101 / 111 | 5 / 7 | 57⑻ |
1100101⑵ | 001 / 100 / 101 | 1 / 4 / 5 | 145⑻ | |
16진수 | 37a⒃ |
① 2진수로 바꾼다 | ③ 11 / 111 / 1010 | ⑤ 3자리로 다시 변경 001 101 111 010 |
② 3 / 7 / 10 | ④ 4자리로 변경 0011 0111 1010 |
⑥ 1572 |
◎ Wrapper class
- Wrapper Class
- 기본형 데이터형의 값을 객체로 감싸서 기능을 제공하는 클래스
- java.lang 패키지에는 기본형 데이터형과 같은 이름의 클래스가 존재한다
- byte-Byte
- short-Short
- int-Integer
- 데이터형 byte 는 기능이 없지만 Wrapper Class인 Byte는 기능이 있다
- byte b = ?; -128 ~ +127
- Byte 의 기능
- 음수저장 가능한 값 Byte.MIN_VALUE
- 양수저장 가능한 값 Byte.MAX_VALUE
- Byte객체가 가지고 있는 값을 문자열로 얻기
- Byte b=new Byte(70); b.toString();
◎ 연산자
연산자 : 연산에 사용할 예약된 부호들 | |
1. 최우선 | |
() | 괄호 안의 연산이 최우선시 된다 |
2. 단항 | |
~, !, +, -, ++, -- | 연산에 필요한 항이 하나 |
사용법 | 연산자 대상체; ~(tilde) : 1의 보수연산 10 : 0000 1010 ~10 : 1111 0101 ==> -11 ~양수 : 부호변경 1증가 ~음수 : 부호변경 1감소 !(not) : true <-> false !true => false !false => true !(3>4) false + : 형식적 제공 +3 - : 2의 보수연산(부호 바꿈연산) `10 ++, -- : 대상체의 값을 변경하는 연산자 대입연산자와 함께 사용되거나, method에 값으로 전달되면 전위와 후위는 다른 값을 넘겨준다 전위연산 : 연산자 대상체; 후위연산 : 대상체 연산자; 전위 : 내것 먼저(대상체 연산을 먼저 수행하고 대입) 후위 : 남의것 먼저(대입연산을 먼저 수행하고 대상체를 연산) ++ : 대상체의 값을 1씩 증가 int i = 4; ++i; // 4->5 i++ // 5->6 -- : 대상체의 값을 1씩 감소 int i = 10; --i; // 10->9 i--; // 9->8 |
3. 산술 | |
+, -, *, /, %(나눈 나머지) | |
사용법 | / : 나누기 정수/정수 = 정수 실수/실수 = 실수 % : 큰 값을 몇가지의 작을 값으로 만들 때 많은 값을 %가짓수 10%2 = |1 |
4. 쉬프트 | |
<<, >>, >>> | |
5. 관계 | |
>, <, >=, <=, ==, != | |
6. 논리 | |
6-1 일반논리 | &&, || |
6-2 비트논리 | &, |, ^ |
7. 삼항 | |
? : | |
8. 대입 | |
=,+=, -=, *=, /=, %=, <<=, >>=, >>>=, &=, |=, ^= |
'Web_Back-end > Java SE' 카테고리의 다른 글
[Java] 2020.10.28. day_6 package, for문, eclipse (0) | 2020.10.28 |
---|---|
[Java] 2020.10.27. day_5 제어문_if, if else, else if, switch~case, break (0) | 2020.10.27 |
[Java] 2020.10.26. day_4 연산자 (0) | 2020.10.26 |
[Java] 2020.10.22. day 2_EditPlus 사용 / 상수와 변수 / 형변환 (0) | 2020.10.22 |
[Java] 2020.10.21. day 1_ java 개발 환경 구축 및 이론 (0) | 2020.10.21 |