1. 자바 API 개요
자바 API(Application Programming Interface)
- 자바에서 제공하는 프로그램 개발을 편리하게 해주는 도구
- ex.
System.out.printf()
,Math.random()
,Math.PI
패키지(Package)
- 자바 코드의 묶음
- 일종의 디렉터리
- 관련 코드를 한곳에 모아 관리하는 역할
- 이름만 같은 다른 코드를 구분하기 위해 사용하기도 한다.
자바 API 문서
- 자바에서 제공하는 여러 API를 정리한 문서
- 자바 17버전 API 문서 링크: https://docs.oracle.com/en/java/javase/17/docs/api/
2. 자바 API 기초 활용
Math 클래스
- 수학과 관련된 자바 API
- 지수와 로그, 제곱근과 삼각함수 등의 연산을 제공
- 자바는 Math class가 있지만 정확한 계산을 위해 만든 언어가 아니라서 계산을 해야 될 경우 다른 언어를 사용한다
- ex. 파이썬의 머신 러닝
- import 방법
1
import java.lang.Math;
- ex.
Math
클래스 예제
코드 | 설명 | 예제 | 예제 결과 |
---|---|---|---|
static double PI | 수학에서 사용 되는 원주율값을 지닌 변수 | Math.PI | 3.141593 |
static double random() | 0.0 이상 1.0 미만의 실숫값을 반환하는 메소드 | Math.random() | 0.016834 |
static double floor(double a) | 실수 a의 내림값을 반환하는 메소드 | Math.floor(3.56) | 3.000000 |
static double sqrt(double a) | 실수 a의 제곱근을 반환하는 메소드 | Math.sqrt(4) | 2.000000 |
static double pow(double a, double b) | 실수 $a^b$을 반환하는 메소드 | Math.pow(2, 3) | 8.000000 |
Random 클래스
- 난수 생성을 위한 자바 API
Math.random()
과 달리 객체를 만들어 사용- import 방법
1
import java.util.Random;
- ex.
Random
클래스 예제
코드 | 설명 | 예제 | 예제 결과 |
---|---|---|---|
Random() | Random 클래스의 생성자 | Random random = new Random(); | |
int nextInt() | int의 표현 범위 내 임의의 정숫값을 반환하는 메소드 | random.nextInt() | -203945 |
int nextInt(int n) | 0 이상 n 미만의 임의의 정숫값을 반환하는 메소드 | random.nextInt(5) | 3 |
double nextDouble() | 0.0 이상 1.0 미만인 임의의 실숫값을 반환하는 메소드 | random.nextDouble() | 0.324514 |
boolean nextBoolean() | $참_{true}$ 또는 $거짓_{false}$을 임의 반환하는 메소드 | random.nextBoolean() | false |
ArrayList 클래스
- 객체들을 저장할 수 있는 자바 API
객체 관리를 돕는 배열의 또 다른 형태
➣ ArrayList와 같이 여러 데이터의 효율적 관리를 위한 하나의 틀을 자료구조(data structure) 라고 함
- import 방법
1
import java.util.ArrayList;
- ex.
ArrayList
클래스 예제
코드 | 설명 | 예제 | 예제 결과 |
---|---|---|---|
ArrayList<E>() | E 타입 객체 관리를 위한 ArrayList 클래스의 생성자 | ArrayList<Integer> aList = new ArrayList<Integer>(); | [] |
void add(E element) | 마지막 요소의 다음 인덱스에 element 객체를 추가하는 메소드 | aList.add(10); | [10] |
E set(int index, E element) | 특정 index에 위치한 요소를 element로 변경하는 메소드 | aList.set(0, 20) | [20] |
E remove(int index) | index 위치 요소를 제거와 동시에 반환하는 메소드 | aList.remove(0) | [] |
int size() | ArrayList에 담긴 요소의 개수를 반환하는 메소드 | aList.size() | 0 |