자바 기초 문법 - Math 클래스, Calendar 클래스

honeyricecake·2022년 5월 2일
0

학교 수업 - 자바

목록 보기
9/16

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 클래스의 특징

  • Java.util 패키지
  • 추상 클래스로 정의 public abstract class Calender
  • 시간과 날짜 정보 저장 관리
    년, 월, 일, 요일, 시간, 분, 초, 밀리초, 오전 오후 등
    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);
		

	}

}

0개의 댓글