-
java.util패키지-Data클래스,Calendar클래스자바 2022. 3. 11. 10:57728x90
자바 표준 API에는 날짜 정보와 관련된 클래스들이 있다.
클래스 용도 Date 날짜와 시간 정보를 저장하는 클래스, 특정 시점의 연도, 월, 일, 시간정보 저장 Calendar 운영체제의 날짜와 시간을 얻을 때 사용, 달력을 표현한 클래스 연도,월,일,요일,오전/오후,시간 등의 정보 얻을 수 있음 Date 클래스
객체간의 날짜 정보를 주고받을 때 매개변수나 리턴타입으로 주로 사용
Date date=new Date(); --객체 생성
Date 객체의 toString() 메소드는 영문으로 된 날짜를 리턴하기 때문에 원하는 날짜 형식의 문자열을 얻고 싶다면
java.text패키지의 SimpleDateFormat 클래스와 함께 사용하는 것이 좋다.
SimpleDateFormat dateFormat =new SimpleDateFormat("yyyy년 MM월 dd일 hh시 mm분 ss초");
SimpleDateFormat 객체를 얻었다면, format()메소드를 호출해서 원하는 형식의 날짜 정보를 얻을 수 있다.
format() 메소드의 매개값은 Date객체이다.
String format=dateFormat.format(date);
import java.text.DateFormat; import java.text.SimpleDateFormat; import java.time.LocalDate; import java.time.LocalDateTime; import java.time.format.DateTimeFormatter; import java.util.Date; //java.sql.Date; 도 있음 public class DateExample { public static void main(String[] args) { // TODO Auto-generated method stub Date date = new Date(); System.out.println(date); SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy년 MM월 dd일 hh:mm:ss"); String fomat=dateFormat.format(date); System.out.println(fomat); } }
새로운 버전 1.8(feat. JodaTime)
LocalDateTime now = LocalDateTime.now(); //Date date = new Date();와 같은의미 System.out.println(now); //시스템 설정에 되어있는 그 지역의 간단한 날짜형식으로 표현되어짐 String format2 = now.format(DateTimeFormatter.ofPattern("yyyy년 MM월 dd일 E요일 hh:mm:ss")); System.out.println(format2); System.out.println(LocalDate.now()); //날짜만 표현 //chain 방식 System.out.println(LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy년 MM월 dd일 E요일 hh:mm:ss"))); //LocalDateTime 시간까지 표현 가능
Calendar 클래스
Calendar 클래스는 추상 클래스이므로 new 연산자를 사용해서 인스턴스를 생성할 수 없다.
정적메소드인 getInstance() 메소드를 이용하여 현재 운영체제에 설정되어 있는 시간대를 기준으로 한 Calendar 하위 객체를 얻을 수 있다.
Calendar now=Calendar.getInstance();
Calendar now=Calendar.getInstance(); int year=now.get(Calendar.YEAR); //연도를 리턴 int month=now.get(Calendar.MONTH)+1; /*월을 리턴 +1해주는 이유는 -1해서 결과가 나오기 때문 ex)3월인데 해보면 2월 나옴 그래서 +1*/ int day=now.get(Calendar.DAY_OF_MONTH); //일을 리턴 int week=now.get(Calendar.DAY_OF_WEEK); //요일을 리턴 int amPm=now.get(Calendar.AM_PM); //오전오후를 리턴,출력할때 String이용해서출력 int hour=now.get(Calendar.HOUR); //시를 리턴,출력할때 String이용해서 출력 int minute=now.get(Calendar.MINUTE); //분을 리턴 int second=now.get(Calendar.SECOND); //초를 리턴 System.out.println(year+"년"); System.out.println(month+"월"); System.out.println(day+"일"); System.out.println(hour+"시"); System.out.println(minute+"분"); System.out.println(second+"초");
728x90'자바' 카테고리의 다른 글
콘솔에서 실행할 수 있는 메모앱 (0) 2022.03.15 JDBC연동하기 자바와 DBMS를 연결 (0) 2022.03.14 Arrays.sort() (0) 2022.03.11 try-catch예제 (0) 2022.03.11 Java 단축키 정리 (0) 2022.02.26