1. Wrapper 클래스
· 기본 자료형 8개를 인스턴스로 요구되는 경우가 존재하는데, 그 때 객체로 다루기 위해서 사용하는 클래스들을
래퍼 클래스라 하며, class 내부에 있는 함수를 사용한다.
· 래퍼 클래스는 기본 자료형의 첫 글자를 대문자로 변경해서 표기한다.
①Boxing: 기본자료형을 객체로 변환 ex) Interger obj = new Integer(10);
②UnBoxing: 객체를 기본자료형으로 변환 ex) int num = obj.intValue();
③Auto Boxing/Auto UnBoxing: 인스턴스를 직접적으로 혹은 기본자료형을 직접적으로 대입하는 경우 자동 변환되는 기능
ex) Auto Boxing → Integer iObj = 10; Auto UnBoxing → int num = obj;
2. Number 클래스
· java.lang.Number
: 모든 래퍼 클래스가 상속하는 클래스이며, 래퍼 인스턴스에 저장된 값을 원하는 기본 자료형으로 반환할 수 있다.
· int형 값으로 반환 → num.intValue(); long형 값으로 반환 → num.longValue();
※integer 출력 원리는? Object 클래스의 다형성 적용되면서 toString 메소드를 호출한다.
· String.valueOf(); 모든 것을 String으로 변경하는 메소드, Interger.valueOf(): 모든 것을 숫자로 변경하는 메소드이다.
· valueOf() 메소드는 함수 오버로딩이 적용되어 사용되고, static 함수이다.
· 웹에서 입력되는 숫자는 문자로 인식되기 때문에 필요한 경우 Interger.valueOf 함수를 통해 숫자로 변경하여 사용한다.
3. BigInteger 클래스와 BigDecimal 클래스
· Biglnteger 클래스는 immutable의 속성을 지니며, 매우 큰 정수를 표현 할 때 사용한다.(long 이상의 수를 받아들일 때)
· BigDecimal 클래스는 실수를 표현 할 때 사용한다.
4. Math 클래스
· Math 클래스는 수학 관련 연산 기능을 제공하는 클래스이다.
· ex) Math.PI : 원주율, Math.random: 난수 생성할 때 사용, Math.sqrt: 제곱근
5. Array 클래스
※copyOf 메소드: 배열 복사
· int[] arr = Arrays.copyOf(arr, arr.length); → 배열 arr의 전체를 복사
· int[] arr = Arrays.copyOf(arr, 3); → 배열 arr의 index 0, 1, 2에 해당되는 값을 복사
· ex)
※sort 메소드: 배열 정렬
· sort 메소드는 배열을 오름차순 혹은 내림차순으로 정렬시켜주는 메소드이다.
· 오름차순은 값이 작은 순으로 큰 순으로 정렬시켜주며, 내림차순은 큰 순에서 작은 순으로 정렬시켜준다.
· ex)
※compareTo 메소드:
· 오름차순과 내림차순의 기준을 정하기 위해서 compareTo 메소드가 사용된다.
· 아래의 예와 같이 interface comparable - int compareTo(Object o) 형태로 사용되며, 인자로 전달된 o가 작다면 양수를
반환하면서 자리 변경이 일어나고, o가 크다면 음수를 반환하면서 자리 변경이 일어나지 않는다.
· ex) 오름차순 · ex) 내림차순
· sort 메소드의 호출 원리: Arrays.sort(인자), 인자가 comparable의 compareTo 메소드를 호출하여 sort를 작동시킨다.
· search 기능: binarysearch() 해당 값을 탐색하는 메소드이지만, 오름차순 정렬 상태에서만 사용이 가능하다.
6. 문자열의 토큰 구분
· "PM:08:45" 구분자 : 를 기준으로 PM, 08, 45 총 3가지의 토큰으로 구분이 가능하다.
· 위와 같이 구분자를 통해 문자열의 토큰을 나누기 위한 방법
'bitcamp > JAVA' 카테고리의 다른 글
제네릭 (0) | 2021.01.25 |
---|---|
자바의 기본 class_연습문제 (0) | 2021.01.25 |
Object 클래스_연습문제 (0) | 2021.01.25 |
JVM 메모리모델과 Object 클래스 (0) | 2021.01.25 |
예외처리 (0) | 2021.01.21 |