java.util 패키지
자바에서 매우 중요한 클래스들을 모아놓은 패키지
데이터 구조, 날짜 및 시간 관련 클래스, 랜덤 숫자 생성, 컬렉션 프레임워크 등 다양한 유틸리티 기능 제공
- 컬렉션 프레임워크 (Collection Framework) - 리스트, 집합, 맵
- 날짜와 시간 클래스 - Date, Calendar, TimeZone, GregorianCalendar
- 랜덤 숫자 생성 클래스 - Random
- 유틸리티 클래스 - Arrays, Collections
- 스택과 벡터 클래스 - Stack, Vector
- Properties 클래스
- Observer 패턴 관련 클래스
- UUID 클래스
- Comparator 인터페이스
- Scanner 클래스
- Timer 클래스
Random 클래스
자바에서 난수(랜덤 숫자)를 생성하기 위해 사용되는 클래스
Random ran = new Random();
int i = ran.nextInt(10); // 0~9 사이의 난수 생성
Ramdom 클래스 사용 예
import java.util.Random;
public class RandomClassTest_01 {
public static void main(String[] args) {
// 난수를 생성하기 위해서 Random 클래스형인 객체 randNumber 생성
Random randNumber = new Random();
int num;
for (int i = 0; i < 10; i++) {
// 1에서 20 사이의 난수 발생
num = 1 + Math.abs(randNumber.nextInt()) % 20;
System.out.printf("%d ",num);
}
}
}
-> Random 객체를 생성해서 1에서 20 사이의 난수를 생성한다.
Math 클래스
자바에서 수학적 연산을 수행할 수 있는 다양한 유틸리티 메서드를 제공
모든 메서드가 static으로 정의되어 있어 클래스 이름으로 직접 호출하여 사용할 수 있다.
public class MathClassTest_01 {
public static void main(String[] args) {
// Math 클래스
System.out.printf("PI 값 : %.5f\n",Math.PI);
System.out.printf("E의 값 : %.5f\n",Math.E);
int x = 2;
System.out.printf("2에 대한 지수 값 : %.5f\n",Math.exp(x));
System.out.printf("2에 대한 자연로그 값 : %.5f\n",Math.log(x));
System.out.printf("2에 대한 상용로그 값 : %.5f\n",Math.log10(x));
int degree = 30;
double radianValue = Math.toRadians(degree);
System.out.printf("30도에 대한 라디안 값 : %.5f\n",radianValue);
System.out.printf("sin(30) : %3.2f\n",Math.sin(radianValue));
System.out.printf("cos(30) : %3.2f\n",Math.cos(radianValue));
System.out.printf("tan(30) : %3.2f\n",Math.tan(radianValue));
double convertedDegree = Math.toDegrees(radianValue);
System.out.printf("라디안 값을 30도로 변환 : %3.2f",convertedDegree);
}
}
'JAVA > 기초공부' 카테고리의 다른 글
[JAVA] 제너릭 (Generics) (1) | 2024.10.14 |
---|---|
[JAVA] 컬렉션 (Collections) (9) | 2024.10.13 |
[JAVA] java.lang 패키지 내의 주요 클래스들 (1) | 2024.10.13 |
[JAVA] 예외처리 (0) | 2024.10.13 |
[JAVA] 인터페이스 (Interfaces) (1) | 2024.10.09 |