1~3. λ μ§μ μκ°, Calendar ν΄λμ€
λ μ§μ μκ°
java.util.Date
λ μ§μ μκ°μ λ€λ£° λͺ©μ μΌλ‘ λ§λ€μ΄μ§ ν΄λμ€ (JDK1.0)
Dateμ λ©μλλ κ±°μ deprecated λμμ§λ§, μ¬μ ν μ°μ΄κ³ μμ
java.util.Calendar
Date ν΄λμ€λ₯Ό κ°μ ν μλ‘μ΄ ν΄λμ€ (JDK1.1). μ¬μ ν λ¨μ μ΄ μ‘΄μ¬
java.time ν¨ν€μ§
Dateμ Calendarμ λ¨μ μ κ°μ ν μλ‘μ΄ ν΄λμ€λ€μ μ 곡 (JDK1.8)
Calendar ν΄λμ€
μΆμ ν΄λμ€μ΄λ―λ‘ getInstance()
λ₯Ό ν΅ν΄ ꡬνλ κ°μ²΄λ₯Ό μ»μ΄μΌ ν¨
Caleldar cal = new Calendar (); // μλ¬. μΆμν΄λμ€λ μΈμ€ν΄μ€ μμ± λΆκ°
Calendar cal = Calendar. getInstance (); // νμ¬ λ μ§μ μκ°μΌλ‘ μ
ν
λ¨
int thisYear = cal. get (Calendar.YEAR); // μ¬ν΄κ° λͺλ
μΈμ§ μμλ
int lastDayOfMonth = cal. getActualMaximum (Calendar.DATE); // μ΄ λ¬μ λ§μ§λ§λ
4~5. Calendar ν΄λμ€ μμ
get()
μΌλ‘ λ μ§μ μκ° νλ κ°μ Έμ€κΈ°
Calendar cal = Calendar. getInstance (); // νμ¬ λ μ§μ μκ°μΌλ‘ μΈν
int thisYear = cal. get (Calendar.YEAR); // μ¬ν΄κ° λͺλ
μΈμ§ μμλ
int lastDayOfMonth = cal. getActualMaximum (Calendar.DATE); // μ΄ λ¬μ λ§μ§λ§ λ
set()
μΌλ‘ λ μ§μ μκ° μ€μ νκΈ°
Calendar date1 = Calendar. getInstance ();
date1. set ( 2017 , 7 , 15 ); // 2017λ
8μ 15μΌ
Calendar time1 = Calendar. getInstance ();
time1. set (Calendar.HOUR_OF_DAY, 10 ); // time1μ 10μ 20λΆ 30μ΄λ‘ μ€μ
time1. set (Calendar.MINUTE, 20 );
time1. set (Calendar.SECOND, 30 );
clear()
λ‘ Calendar κ°μ²΄μ λͺ¨λ νλ μ΄κΈ°ν
Calendar dt = Calendar. getInstance ();
// Thu Aug 29 07:13:03 KST 2017
System.out. println ( new Date (dt. getTimeInMillis ()));
dt. clear ();
// Thu Jan 01 00:00:00 KST 1970
System.out. println ( new Date (dt. getTimeInMillis ()));
// μλ‘μ΄ κ°μ²΄ λ€μ ν λΉ
dt = Calendar. getInstance ();
// Thu Aug 29 07:13:03 KST 2017
System.out. println ( new Date (dt. getTimeInMillis ()));
// μ,λΆ,μ΄ μ΄κΈ°ν
dt. clear (Calendar.SECOND);
dt. clear (Calendar.MINUTE);
dt. clear (Calendar.HOUR_OF_DAY);
dt. clear (Calendar.HOUR);
// Thu Aug 29 00:00:00 KST 2017
System.out. println ( new Date (dt. getTimeInMillis ()));
add()
λ νΉμ νλμ κ°μ μ¦κ° λλ κ°μ (λ€λ₯Έ νλμ μν₯ O)
Calendar date = Calendar. getInstance ();
date. clear (); // λͺ¨λ νλ μ΄κΈ°ν
date. set ( 2020 , 7 , 31 ); // 2020λ
8μ 31μΌλ‘ μ€μ
date. add (Calendar.DATE, 1 ); // λ μ§(DATE)μ 1μ λν¨
date. add (Calendar.MONTH, - 8 ); // μ(MONTH)μμ 8μ λΊ
roll()
λ νΉμ νλμ κ°μ μ¦κ° λλ κ°μ (λ€λ₯Έ νλμ μν₯ X)
date. set ( 2020 , 7 , 31 ); // 2020λ
8μ 31μΌλ‘ μ€μ
date. roll (Calendar.DATE, 1 ); // λ μ§(DATE)μ 1μ λν¨
date. roll (Calendar.MONTH, - 8 ); // μ(MONTH)μμ 8μ λΊ
Date μ λ©μλλ λλΆλΆ deprecated λμμ§λ§ μ¬μ ν μ¬μ©
Calendar λ₯Ό Date λ‘ λ³ν
Calendar cal = Calendar. getInstance ();
...
Date d = new Date (cal. getTimeInMillis ());
Date λ₯Ό Calendar λ‘ λ³ν
Date d = new Date ();
...
Calendar cal = Calendar. getInstance ();
cal. setTime (d);
9~12. νμν ν΄λμ€
java.text ν¨ν€μ§μ DecimalFormat, SimpleDateFormat
μ«μμ λ μ§λ₯Ό μνλ νμμΌλ‘ μ½κ² μΆλ ₯ κ°λ₯ (μ«μ, λ μ§ β νμ λ¬Έμμ΄)
double number = 1234567.89 ;
DecimalFormat df = new DecimalFormat ( "#.#E0" );
String result = df. format (number); // result = "1.2E6"
νμ λ¬Έμμ΄μμ μ«μμ λ μ§λ₯Ό λ½μλ΄λ κΈ°λ₯ (νμ λ¬Έμμ΄ β μ«μ, λ μ§)
DecimalFormat df = new DecimalFormat ( "#,###.##" );
Number num = df. parse ( "1,234,567.89" );
double d = num. doubleValue (); // 1234567.89
λ μ§μ μκ°μ λ€μν νμμΌλ‘ μΆλ ₯ν μ μκ² ν΄μ€
Date today = new Date ();
SimpleDateFormat df = new SimpleDateFormat ( "yyyy-MM-dd" );
// μ€λ λ μ§λ₯Ό yyyy-MM-dd ννλ‘ λ³ν ν λ°ν
String result = df. format (today);
νΉμ νμμΌλ‘ λμ΄ μλ λ¬Έμμ΄μμ λ μ§μ μκ°μ λ½μλΌ μ μμ
DateFormat df = new SimpleDateFormat ( "yyyyλ
MMμ ddμΌ" );
DateFormat df2 = new SimpleDateFormat ( "yyyy/MM/dd" );
Date d = df. parse ( "2015λ
11μ 23μΌ" );
String result = df2. format (d);