Math 클래스
java.lang,math에서 산술 연산 메소드 제공
(java.lang은 기본적으로 추가)
모든 메소드는 static 타입 : 클래스 이름으로 바로 호출해야 함.
자주 쓰이는 메소드들
static double abs(double a) : 실수 a의 절댓값 리턴
static double exp(double a) : e^a 값 리턴
static double ceil(double a) : 올림
static double floor(double a) : 내림
static double max(double a, double b)
static double min(double a, double b)
각각 둘 중 더 큰 값, 작은 값을 리턴
static double sqrt(double x) : 제곱근
static double round(double x) : 반올림
난수 발생 - static double random() : 0.0 이상 1.0 미만의 임의의 double 값을 반환
int n = (int)(Math.random() * 100 + 1) : 1 ~ 100사이의 랜덤 정수를 만드는 코드
(int)는 실수부를 버리고 정수부를 남긴다.
Calendar 클래스
Calendar 클래스의 특징
Calendar 객체 생성 (추상클래스)
Calendar now = Calendar.getInstance();
now 객체는 현재 날짜와 시간 정보를 가지고 생성
Calender는 추상 클래스이므로 new Calendar() 하지 않음
날짜와 시간 알아내기
int year = now.get(Calendar.YEAR); // now에 저장된 년도
int month = now.get(Calendar.MONTH) + 1; // now에 저장된 달(0 ~ 11)
날짜와 시간 설정하기
Calendar 객체에 저장
컴퓨터의 날짜와 시간을 바꾸는 것은 아님
Calendar firstDate = Calendar.getInstance(); -> 추상 클래스는 new로 객체 생성이 불가
firstDate.clear(); // 현재 날짜와 시간 정보를 모두 지움
firstDate.set(2022, 0, 1); // 2022년 1월 1일
firstDate.set(Calendar.HOUR_OF_DAY, 20); // 20시 (오후 8시)로 설정
firstDate.set(Calendar.MINUTE, 30); // 30분으로 설정
예제 : Calendar를 이용하여 현재 날짜와 시간 알아내기 / 날짜 시간 설정하기
import java.util.Calendar;
public class CalendarEX {
public static void printCalendar(String msg, Calendar cal)
{
int year = cal.get(Calendar.YEAR);
int month = cal.get(Calendar.MONTH) + 1;
int day = cal.get(Calendar.DAY_OF_MONTH);
int dayOfWeek = cal.get(Calendar.DAY_OF_WEEK);
int hour = cal.get(Calendar.HOUR);
int hourOfDay = cal.get(Calendar.HOUR_OF_DAY);
int ampm = cal.get(Calendar.AM_PM);
int minute = cal.get(Calendar.MINUTE);
System.out.println(msg + "/" + year + "/" + month + "/" + day + "/" + dayOfWeek + "/" + hour + "/" + hourOfDay + "/" + ampm + "/" + minute);
}
public static void main(String[] args) {
Calendar now = Calendar.getInstance();
printCalendar("지금은", now);
}
}