Դաս 15։ Java – Date and Time

0

Java-ն տրմադրում է Date class (դաս), որը հասանելի է java.util փաթեթում, այս դասը ներառում է ընթացիկ ամսաթիվը և ժամանակը:

Date class-ը աջակցում է երկու կոնստրուկտորներ, ինչպես ցույց է տրված հետևյալ աղյուսակում:

Sr.No. Method & Description
1 Date( )

Այս կոնստրուկտորը սկզբնավորում է օբյեկտը ընթացիկ ամսաթվով և ժամանակով:

2 Date(long millisec)

Այս կոնստրուկտորը ընդունում է այն argument-ը, որը հավասար է միլիվարկյանների թվին, որոնք անցել են 1970 թ. Հունվարի 1-ից:

 

Ստորև ներկայացված են date class-ի մեթոդները:

Sr.No. Method & Description
1 boolean after(Date date)

Վերադարձնում է true, եթե ամսաթվի օբյեկտը (Date object) պարունակում է ամսաթիվ, որը ավելի փոքր է, քան նշված ամսաթիվը։ Հակառակ դեպքում վերադարձնում է false։

2 boolean before(Date date)

Վերադարձնում է true, եթե ամսաթվի օբյեկտը (Date object) պարունակում է ամսաթիվ, որը ավելի մեծ է, քան նշված ամսաթիվը։ Հակառակ դեպքում վերադարձնում է false։

3 Object clone( )

Կրկնօրինակում է Date object-ը:

4 int compareTo(Date date)

Համեմատում է անհրաժեշտ օբյեկտի արժեքը ներկայիս ամսաթվի հետ: Վերադարձնում է 0, եթե արժեքները հավասար են: Վերադարձնում է բացասական արժեք, եթե օբյեկտը ավելի վաղ է, քան ամսաթիվը: Վերադարձնում է դրական արժեք, եթե օբյեկտը ավելի ուշ է, քան ամսաթիվը:

5 int compareTo(Object obj)

Գործում է նույն կերպ compareTo (Date), եթե obj-ն ունի class Date։ Հակառակ դեպքում – ClassCastException:

6 boolean equals(Object date)

Վերադարձնում է true, եթե ամսաթվի օբյեկտը (Date object) պարունակում է նույն ամսաթիվը և ժամանակը, որը նշված է։ Հակառակ դեպքում վերադարձնում է false։

7 long getTime( )

Վերադարձնում է 1970 թ. Հունվարի 1-ից անցած միլիվարկյանների քանակը:

8 int hashCode( )

Վերադարձնում է hash կոդը invoking object-ի համար։

9 void setTime(long time)

Սահմանում է ժամանակն ու ամսաթիվը, ըստ սահմանված ժամանակի, որը իրենից ներկայացնում է անցաց ժամանակ միլիվարկյաններով սկսված 1970 թ. Հունվարի 1-ի կեսգիշերից:

10 String toString( )

Վերափոխում է Date object-ը տողի և վերադարձնում է արդյունքը

 

Ինչպես ստանալ ընթացիկ ամսաթիվը և ժամանակը

Java-ում ներկա ամսաթիվը և ժամանակը ստանալը շատ հեշտ է: Դուք կարող եք օգտագործել պարզ Date object toString() method-ի հետ, ինչպես ներկայացված է ստորև։

Օրինակ՝

import java.util.Date;

public class DateDemo {

public static void main(String args[]) {

// Instantiate a Date object

Date date = new Date();

// display time and date using toString()

System.out.println(date.toString());

}

}

Արդյունքը՝

on May 04 09:51:52 CDT 2009

Ամսաթվի համեմատություններ

Ստորև ներկայացված են երկու ամսաթվերը իրար հետ համեմատելու երեք եղանակ ՝

  •  Երկու object-ների համար էլ, դուք կարող եք օգտագործել getTime () 1970 թ. Հունվարի 1-ից անցած միլիվարկյանների քանակը ստանալու համար, ապա համեմատել այս երկու արժեքները:
  •  Դուք կարող եք օգտագործել before( ), after( ), և equals( ) մեթոդները։ Օրինակ, Date(99, 2, 12).before(new Date (99, 2, 18)) վերադարձնում է true։
  •  Դուք կարող եք օգտագործել compareTo () մեթոդը, որը սահմանվում է Comparable ինտերֆեյսի կողմից և իրականացվում է Date-ի կողմից։

Ամսաթիվ ֆորմատավորում SimpleDateFormat-ի միջոցով

SimpleDateFormat-ը դաս է, նախատեսված ֆորմատավորման ու ամսաթվերի վերլուծման համար։ SimpleDateFormat-ը թույլ է տալիս Ձեզ սկսել date-time ֆորմատավորումը՝ ընտրելով ցանկացած սահմանված ձևաչափ։

Օրինակ՝

import java.util.*;

import java.text.*;

public class DateDemo {

public static void main(String args[]) {

Date dNow = new Date( );

SimpleDateFormat ft =

new SimpleDateFormat (“E yyyy.MM.dd ‘at’ hh:mm:ss a zzz”);

System.out.println(“Current Date: ” + ft.format(dNow));

}

}

Արդյունքը՝

Current Date: Sun 2004.07.18 at 04:14:09 PM PDT

SimpleDateFormat Format Codes

Ժամանակի ձեւաչափը սահմանելու համար անհրաժեշտ է օգտագործել ժամային օրինակի տող, որտեղ բոլոր ASCII տառերը վերապահվում են որպես շաբլոնային տառեր, որոնք սահմանվում են հետևյալ կերպով։

Character Description Example
G Era designator AD
y Year in four digits 2001
M Month in year July or 07
d Day in month 10
h Hour in A.M./P.M. (1~12) 12
H Hour in day (0~23) 22
m Minute in hour 30
s Second in minute 55
S Millisecond 234
E Day in week Tuesday
D Day in year 360
F Day of week in month 2 (second Wed. in July)
w Week in year 40
W Week in month 1
a A.M./P.M. marker PM
k Hour in day (1~24) 24
K Hour in A.M./P.M. (0~11) 10
z Time zone Eastern Standard Time
Escape for text Delimiter
Single quote `

 

Հարգելի ընթերցող, խնդրում ենք չմոռանալ like տալ մեր ֆեյսբուքյան էջին, քանի որ նորությունների մեծ մասը առաջինը տեղադրվում է հենց այնտեղ։ Ինչպես նաև հետևեք մեզ այլ սոցիալական ցանցերում և, իհարկե, գրանցվեք մեր բլոգում։

Share.