4 mënyra për të krahasuar dy data në Java

Përmbajtje:

4 mënyra për të krahasuar dy data në Java
4 mënyra për të krahasuar dy data në Java

Video: 4 mënyra për të krahasuar dy data në Java

Video: 4 mënyra për të krahasuar dy data në Java
Video: Установка инсталляции. Монтаж водонагревателя. Ошибки. 2024, Mund
Anonim

Ka shumë mënyra për të krahasuar dy data në gjuhën e programimit Java. Në kompjuterët, një datë përfaqësohet nga një numër (lloji i të dhënave i gjatë) në njësi të kohës - domethënë, numri i milisekondave që kanë kaluar që nga 1 janari 1970. Në Java, Data është një objekt, që do të thotë se ka disa metoda për të bërë krahasime. Çdo metodë e përdorur për të krahasuar dy data është në thelb krahasimi i njësive kohore të dy datave.

Hapi

Metoda 1 nga 4: Përdorimi i krahasimitTo

4301351 1
4301351 1

Hapi 1. Përdorni krahasiminTo

Objekti Data zbaton Krahasueshëm kështu që 2 data mund të krahasohen me njëra -tjetrën drejtpërdrejt me metodën e krahasimitTo. Nëse të dy datat kanë të njëjtin numër në njësitë kohore, atëherë metoda kthehet në zero. Nëse data e dytë është më e vogël se e para, kthehet një vlerë më pak se zero. Nëse data e dytë është më e madhe se e para, metoda kthen një vlerë më të madhe se zero. Nëse të dy datat janë të njëjta, atëherë metoda do të kthejë një vlerë null.

4301351 2
4301351 2

Hapi 2. Krijoni objekte të shumta Data

Ju duhet të krijoni objekte të shumta të datës para se t'i krahasoni ato. Një nga mënyrat më të lehta për ta bërë këtë është përdorimi i klasës SimpleDateFormat. Kjo klasë e bën të lehtë shndërrimin e një vlere të datës hyrëse në një objekt Data.

    SimpleDateFormat sdf = SimpleDateFormat e re ("yyyy-MM-dd"). Për të deklaruar një vlerë në një '' Data e Objektit '' të ri, përdorni të njëjtin format të datës kur krijoni datën. Data e datës1 = sdf.parse ("1995-02-23"); // data1 është 23 shkurt 1995 Data e datës2 = sdf.parse ("2001-10-31"); // data2 është 31 tetor 2001 Data e datës3 = sdf.parse ("1995-02-23"); // data3 është 23 shkurt 1995

4301351 3
4301351 3

Hapi 3. Krahasoni objektet Date

Kodi i mëposhtëm do t'ju tregojë shembuj për secilin rast - më pak se, i barabartë dhe më i madh se.

    date1. Krahasoni me (date2); // date1 <date2, kthen një vlerë më të vogël se 0 date2.compareTo (date1); // date2> date1, kthen një vlerë më të madhe se 0 date1.compareTo (date3); // date1 = date3, kështu që do të dalë 0 në tastierë

Metoda 2 nga 4: Përdorimi i barabartë, pas dhe para

4301351 4
4301351 4

Hapi 1. Përdorni të barabartë, para dhe më parë

Datat mund të krahasohen duke përdorur metodat e barabarta, pas dhe para. Nëse dy data kanë të njëjtën vlerë në kohë, metoda e barabartë kthehet e vërtetë. Shembulli i mëposhtëm do të përdorë objektin Data i krijuar në metodën e krahasimitTo.

4301351 5
4301351 5

Hapi 2. Krahasoni me metodën e mëparshme

Kodi i mëposhtëm tregon një rast shembull që kthen true dhe false. Nëse data1 është një datë para datës2, metoda e mëparshme kthehet e vërtetë. Përndryshe, metoda para kthehet false.

    System.out.print (data1.para (date2)); // shfaq vlerën '' true '' System.out.print (date2.parafore (date2)); // ktheni vlerën "false"

4301351 6
4301351 6

Hapi 3. Krahasoni duke përdorur metodën pas

Kodi i mëposhtëm tregon një rast shembull që kthen true dhe false. Nëse data2 është data pas datës 1, metoda after kthehet e vërtetë. Përndryshe, metoda after do të kthehet false.

    System.out.print (date2.after (date1)); // shfaq vlerën '' e vërtetë '' System.out.print (date1.after (date2)); // shfaq vlerën '' false ''

4301351 7
4301351 7

Hapi 4. Krahasoni me metodën e barabartë

Kodi i mëposhtëm tregon një rast shembull që kthen true dhe false. Nëse të dy datat janë të barabarta, metoda e barabartë kthehet e vërtetë. Përndryshe, metoda e barabartë kthehet false.

    System.out.print (date1.equals (date3)); // shfaq vlerën '' e vërtetë '' System.out.print (date1.equals (date2)); // shfaq vlerën '' false ''

Metoda 3 nga 4: Përdorimi i Kalendarit të Klasave

4301351 8
4301351 8

Hapi 1. Përdorni Kalendarin e klasës

Klasa e kalendarit gjithashtu ka krahasuar me, të barabarta, pas dhe para metodave që funksionojnë njësoj si ato të përshkruara më herët për klasën Data. Pra, nëse informacioni i datës ruhet në Kalendarin e Klasave, nuk keni nevojë të nxirrni datën vetëm për të bërë një krahasim.

4301351 9
4301351 9

Hapi 2. Krijo një shembull të Kalendarit

Për të përdorur metoda në Kalendarin e Klasës, duhet të krijoni raste të shumta të Kalendarit. Për fat të mirë, ju mund të përdorni vlerat nga një shembull Data i krijuar më parë.

    Kalendari cal1 = Calendar.getInstance (); // deklaro cal1 Calendar cal2 = Calendar.getInstance (); // deklaro cal2 Calendar cal3 = Calendar.getInstance (); // deklaro cal3 cal1.setTime (data 1); // vendos datën në cal1 cal2.setTime (data2); cal3.setTime (data3);

4301351 10
4301351 10

Hapi 3. Krahasoni cal1 dhe cal2 duke përdorur metodën e mëparshme

Kodi i mëposhtëm do të nxjerrë vlerën e tr

    System.out.print (cal1.para (cal2)); // do të kthejë vlerën '' e vërtetë ''

4301351 11
4301351 11

Hapi 4. Krahasoni cal1 dhe cal2 duke përdorur metodën after

Kodi i mëposhtëm do të kthehet i rremë sepse cal1 është data para kal2.

    System.out.print (cal1.pas (cal2)); // ktheni vlerën "false"

4301351 12
4301351 12

Hapi 5. Krahasoni cal1 dhe cal2 duke përdorur metodën equals

Kodi i mëposhtëm do të tregojë një rast shembull që kthen true dhe false. Gjendja varet nga rasti i Kalendarit që krahasohet. Kodi i mëposhtëm do të kthejë vlerën "e vërtetë", pastaj "e rreme" në rreshtin tjetër.

    System.out.println (cal1.e barabartë (cal3)); // ktheni vlerën '' e vërtetë '': cal1 == cal3 System.out.print (cal1.equals (cal2)); // ktheni vlerën '' false '': cal1! = cal2

Metoda 4 nga 4: Përdorimi i getTime

4301351 13
4301351 13

Hapi 1. Përdorni getTime

Ju gjithashtu mund të krahasoni drejtpërdrejt vlerat e njësisë kohore të dy datave, megjithëse dy metodat e mëparshme mund të jenë më të lehta për t'u lexuar dhe të preferueshme. Në këtë mënyrë do të krahasoni 2 lloje të të dhënave primitive, kështu që mund të përdorni operandët "" dhe "==".

4301351 14
4301351 14

Hapi 2. Krijo një objekt kohor në formatin Numër i gjatë

Para se të krahasoni datat, duhet të krijoni një vlerë të plotë të gjatë nga objekti i krijuar më parë Data. Për fat të mirë, metoda getTime () do ta bëjë atë për ju.

    kohë e gjatë1 = getTime (data1); // shpall kohën primitive1 të datës1 kohë të gjatë2 = getTime (datë2); // të deklarojë kohën primitive2 vlerën e datës2

4301351 15
4301351 15

Hapi 3. Kryeni një krahasim më pak se sa

Përdorni operandin më pak se (<) për të krahasuar këto dy vlera të plota. Meqenëse koha1 është më pak se koha2, do të shfaqet mesazhi i parë. Deklarata else përfshihet për të përfunduar sintaksën.

    nëse (koha1 <koha2) {System.out.println ("data1 është data para datës2"); // do të shfaqet sepse koha1 <time2} else {System.out.println ("data1 nuk është një datë para datës2"); }

4301351 16
4301351 16

Hapi 4. Kryeni një krahasim më të madh se sa

Përdorni operandin më të madh se (>) për të krahasuar këto dy vlera të plota. Meqenëse koha1 është më e madhe se koha2, do të shfaqet mesazhi i parë. Deklarata else përfshihet për të përfunduar sintaksën.

    nëse (koha2> koha1) {System.out.println ("data2 është data pas datës1"); // do të shfaqet sepse koha2> koha1} tjetër {System.out.println ("data2 nuk është data pas datës1"); }

4301351 17
4301351 17

Hapi 5. Kryeni një krahasim të barabartë

Përdorni funksionin operand për të kontrolluar barazinë e vlerave (==) për të krahasuar këto dy numra të plotë. Meqenëse koha1 është e barabartë me kohën3, do të shfaqet mesazhi i parë. Nëse rrjedha e programit kalon në deklaratën else, kjo do të thotë që të dy kohët nuk kanë të njëjtën vlerë.

    if (time1 == time2) {System.out.println ("të dy datat janë të njëjta"); } else {System.out.println ("E para nuk është e njëjtë me të dytin"); // do të shfaqet sepse koha1! = koha2}

Recommended: