Ohjelmointi

Parin luokka Tulossa Java-palvelimeen JavaFX: n kautta?

Pariluokka on tuttu meille, jotka ovat käyttäneet C ++: ta huomattavan pitkään. Vaikka on puhuttu sen lisäämisestä Javaan SDK: n vakiona, se on hieman kiistanalainen aihe. Useat ihmiset ovat virallisesti pyytäneet sitä ja jopa virheitä on jätetty (4947273, 4983155 ja 6229146) saadakseen sen Java-tiedostoon. Kirjoituksessa, jossa kysytään Haluammeko java.util.Pairin? Alex Miller tekee hienoa työtä käsittelemällä asian molemmat puolet.

Ohjelmistoa on jo toteutettu Pari tai a Pari-tyyppinen vastine siellä Javaille. Paikallisten koodipohjien tuntemattoman määrän mukautettujen lisäksi on julkisesti saatavilla olevia esimerkkejä, kuten Java Pair Class -luokan tarjoamat esimerkit, StackOverflow-ketjussa, Ideographin yleinen pari ja (ei ole yllätys) Java Tuples's Pair. Android SDK: ssa on myös Pair-luokka. Eniten yllättänyt on JavaFX 2.0: n javafx.util.Pair-luokan olemassaolo.

Paketin ja luokan nimi ehdotetaan useimmiten SDK-versiolle Pari luokka on ollut java.util.Pair ja JavaFX-versio on samanlainen paketin nimessä: javafx.util.Pair. Javapin suorittaminen tätä luokkaa vastaan ​​JavaFX SDK: ssa johtaa seuraavaan lähtöön.

Koottu julkisesta luokasta "Pair.java" javafx.util.Pair {public K getKey (); public V getValue (); julkinen javafx.util.Pair (K, V); julkinen java.lang.String toString (); public int hashCode (); julkinen totuusarvo on yhtä suuri (java.lang.Object); } 

Kuten yllä javap Lähtö osoittaa, että tämä on suhteellisen yksinkertainen luokka, jossa on parametroitu perusrakentaja, "get" -menetelmät avaimen ja arvon osille Parija "yleiset" menetelmät toString (), on yhtä suuri (objekti)ja hash koodin(). Seuraava koodiluettelo osoittaa, kuinka parametrisoitua konstruktoria käytetään avaimen ja arvon antamiseen jokaiselle Pari se on välitön.

 / ** * Tarjoa kokoelma kuuluisia pareja. * * @return Kokoelma kuuluisia pareja. * / yksityinen staattinen kokoelma createFamousPairs () {lopullinen kokoelma paria = uusi ArrayList(); parit.add (uusi pari ("Yin", "Yang")); pairs.add (uusi pari ("Toiminta", "Reaktio")); pairs.add (uusi pari ("Suola", "Pippuri")); parit.add (uusi pari ("Starsky", "Hutch")); parit.add (uusi pari ("Fox", "Mulder")); parit.add (uusi pari ("Batman", "Robin")); parit.add (uusi pari ("Fred Astaire", "Ginger Rogers")); pairs.add (uusi pari ("Flotsam", "Jetsam")); parit.add (uusi pari ("Brutus", "Nero")); parit.add (uusi pari ("Tom", "Jerry")); parit.add (uusi pari ("Jekyll", "Hyde")); parit.add (uusi pari ("Holmes", "Watson")); pairs.add (uusi pari ("Mario", "Luigi")); pairs.add (uusi pari ("Pinky", "Aivot")); pairs.add (uusi pari ("Wallace", "Gromit")); palaa parit; } 

Jokaisen avaimen ja arvon käyttäminen Pari on myös helppoa, kuten seuraavassa koodinäytteessä näkyy.

 / ** * Kirjoita toimitettu parikokoelma vakiotulosteeseen. * * @param title Vakiotulostukseen kirjoitetun tuotoksen otsikko. * @param parsToPrint -parit kirjoitetaan vakiolähtöön. * / private static void writeCollectionOfPairs (viimeinen merkkijono, lopullinen kokoelma pairsToPrint) {out.println (otsikko + ":"); for (viimeinen paripari: pairSToPrint) {out.println ("\ t" + pair.getKey () + "ja" + pair.getValue ()); }} 

Yllä oleva esimerkki on suhteellisen keksitty, mutta sen voidaan väittää olevan tehokkain käyttö Pari koska kyseisessä esimerkissä se on todella edustettuina "pari" -käsite. Yksi suurimmista valituksista lisäyksestä Pari SDK: lle tai sen käyttämiselle yleensä on, että sitä ei ole nimetty tarpeeksi tarkaksi kattamaan yrityksen olemassaolon liiketoiminnan tarkoitusta. Olin todella ajatellut käyttää JavaFX: ää Pari luokassa, kun kirjoitin joulukuusi-esimerkkini JavaFX 2.0 -julkaisupuuta (JavaFX 2.0 -muotoja) varten. Päätin päättää tätä vastaan ​​ja käytin sopivammin nimettyä sisäkkäistä Koordinaatti luokassa. Olisin kuitenkin voinut helposti käyttää Pari siinä esimerkissä. Seuraava koodiluettelo sisältää juuri tämän esimerkin sisäkkäisillä Koordinaatti luokka poistettu ja viitteet siihen korvattu Pari.

$config[zx-auto] not found$config[zx-overlay] not found