ArrayList

tiedonJärjestäjä

Hello,

sattuisiko joku tietämään kuinka ArrayList:issä järjestetään olioita tietyn ominaisuutensa mukaan indekseihin 0:sta ylöspäin?

Jos luon urheilijaryhmän, joka olisi tarkoitus järjestää siten, että nopein juoksija olisi aina listassa ensimmäisenä. Ja tämä pitäisi tehdä jo jäsenten luontivaiheessa. Tässä ohjelmassa oletetaan etteivät tulokset muutu :).

Tämä on luontimetodini tässä vaiheessa:

public void lisaaJasen(Jasen uusi){
this.jasenet.add(uusi);
}

Millä metodilla saisin jäsenet suoraan nopeuden mukaiseen järjestykseen? En tajunnut Javan englanninkielisiltä sivuilta onko oikea metodi ehkä this.jasenet.set(int index, E element)?? Ja miten tätä käytettäisiin?

Saan nopeuden metodilla "this.jasenet.get(i).kerroTulos();".

1

442

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • qpåorq

      import java.util.Collections;
      import java.util.Comparator;

      public void lisaaJasen(Jasen uusi)
      {
      this.jasenet.add(uusi);

      Collections.sort(jasenet, new Comparator()
      {
      public int compare(Jasen o1, Jasen o2)
      {
      return o1.kerroTulos() - o2.kerroTulos();
      }
      });
      }

      ja arraylistin luot näin niin ei tuu varoitusta:
      ArrayList jasenet = new ArrayList();

    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Veroaste on Suomessa viitisen prosenttiyksikköä liian matala

      Veropohjaa on rapautettu käytännössä koko kulunut vuosituhat, jonka vuoksi valtion menoja on jouduttu rahoittamaan velka
      Maailman menoa
      120
      3028
    2. EU komissio - EU-elpymisrahoja voidaan käyttää TILAPÄISESTI väärin!

      Espanja ohjasi miljardeja euroja – Nyt EU-komissio teki yllättävän paljastuksen Skandaaliksi noussut Espanjan EU-rahoje
      Maailman menoa
      35
      1415
    3. Kultasi eka kirjain? Kuka haluaa

      A haluaa J
      Ikävä
      104
      1279
    4. Kristillinen kaste annetaa upotuskasteena

      Kristillinen upotuskaste perustuu juutalaiseen mikve-kasteeseen, jossa upottaudutaan veden alle kokonaan. Paavali vertas
      Kaste
      162
      1027
    5. Koko kansan kaste Punaisen meren ylityksen aikana

      Koko Israelin 2,5 milj.kansa sai kasteen ja Pyhän Hengen lahjan ylittäessän Punaisen meren. 1.Kor.10 1 Sillä minä en ta
      Kaste
      366
      1017
    6. Empaattisuus ja suoruus.

      Tässä tullut noita pehmeitä asioita pohdittua, mutta toisaalta olen myös yksinkertainen mies. Pidän suoruudestakin. Mi
      Sinkut
      133
      1008
    7. Nainen, mikset lähetä

      miehelle viestiä? Tiedän, että sulla on asiaa ja kysyttävää.
      Ikävä
      60
      937
    8. Ehkä vähän

      Rakastunut sinuun
      Ikävä
      41
      747
    9. Sä saat mut tuntemaan

      Jotain sellaista mitä ei saisi tuntea mutta må en mahda tälle mitään. Mulla on ikävä niitä meidän katseita ja sitä tunne
      Ikävä
      22
      733
    10. Tunnettujen vanhempien lapset, tv-sarja

      Tunnettujen vanhempien lapset saa tv-sarjan. Juurihan yksi heistä oli MTV:ssä 6.5.26 kertomassa ettei halua julkisuutta
      Kotimaiset julkkisjuorut
      112
      681
    Aihe