|
|||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||
java.lang.Objectkanta.HetuTarkistus
public class HetuTarkistus
Luokka henkilötunnuksen tarkistamiseksi
| Field Summary | |
|---|---|
static int[] |
KUUKAUDET
Kuukausien maksimipituudet |
static String |
TARKISTUSMERKIT
Hetuun kelpaavat tarkistusmerkit järjestyksessä |
| Constructor Summary | |
|---|---|
HetuTarkistus()
|
|
| Method Summary | |
|---|---|
static String |
arvoHetu()
Arvotaan satunnainen henkilötunnus, joka täyttää hetun ehdot |
static char |
hetunTarkistusMerkki(String hetu)
Palauttaa mikä olisi hetun tarkistumerkki. |
static int |
rand(int ala,
int yla)
Arvotaan satunnainen kokonaisluku välille [ala,yla] |
String |
tarkista(String hetu)
Tarkistetaan hetu. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
public static final String TARKISTUSMERKIT
public static int[] KUUKAUDET
| Constructor Detail |
|---|
public HetuTarkistus()
| Method Detail |
|---|
public String tarkista(String hetu)
tarkista in interface Tarkistajahetu - joka tutkitaan.
#PACKAGEIMPORT
HetuTarkistus hetut = new HetuTarkistus();
hetut.tarkista("12121") === "Hetu liian lyhyt";
hetut.tarkista("k") === "Hetu liian lyhyt";
hetut.tarkista("12121k") === "Alkuosassa saa olla vain numeroita";
hetut.tarkista("121212") === null; // sallitaan pelkkä syntymäaika
hetut.tarkista("001212") === "Liian pieni päivämäärä";
hetut.tarkista("321212") === "Liian suuri päivämäärä";
hetut.tarkista("300212") === "Liian suuri päivämäärä";
hetut.tarkista("310412") === "Liian suuri päivämäärä";
hetut.tarkista("121312") === "Liian suuri kuukausi";
hetut.tarkista("120012") === "Liian pieni kuukausi";
hetut.tarkista("121212B222Q") === "Väärä erotinmerkki";
hetut.tarkista("121212-2k2Q") === "Yksilöosassa kirjaimia";
hetut.tarkista("121212-2") === "Yksilöosa liian lyhyt";
hetut.tarkista("121212-") === "Yksilöosa liian lyhyt";
hetut.tarkista("121212-12345")=== "Hetu liian pitkä";
hetut.tarkista("121212-222S") === "Tarkistusmerkin kuuluisi olla N";
hetut.tarkista("121212-222N") === null;
hetut.tarkista("121212-231Y") === null;
hetut.tarkista("311212-2317") === null;
public static char hetunTarkistusMerkki(String hetu)
hetu - tutkittava hetu
hetunTarkistusMerkki("121212-222") === 'N';
hetunTarkistusMerkki("121212-222S") === 'N';
hetunTarkistusMerkki("121212-222N") === 'N';
hetunTarkistusMerkki("121212-231Y") === 'Y';
hetunTarkistusMerkki("311212-2317") === '7';
hetunTarkistusMerkki("311212-2317XY") === '7'; // vaikka on liikaa merkkejä
hetunTarkistusMerkki("999999-9999XY") === 'F'; // vaikka on pvm väärin
hetunTarkistusMerkki("12121A-222S") === 'N'; #THROWS NumberFormatException
hetunTarkistusMerkki("12121A-22") === 'N'; #THROWS StringIndexOutOfBoundsException
hetunTarkistusMerkki("121") === 'N'; #THROWS StringIndexOutOfBoundsException
public static int rand(int ala,
int yla)
ala - arvonnan alarajayla - arvonnan yläraja
public static String arvoHetu()
HetuTarkistus hetut = new HetuTarkistus();
hetut.tarkista(arvoHetu()) === null;
hetut.tarkista(arvoHetu()) === null;
hetut.tarkista(arvoHetu()) === null;
hetut.tarkista(arvoHetu()) === null;
hetut.tarkista(arvoHetu()) === null;
|
|||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||