Olen aloitteleva ohjelmoija, niin kuin otsikosta jo näkyy. Olisin halunnut tietää Javassa miten voi saada helpoiten taulukon tiedot käänteiseen järjestykseen? Onko javassa mitään reverse-metodia?
Varmaan helpoin tapa on for-silmukan käyttö:
int[] taulu = {1, 2, 3, 4, 5}; int maara = taulu.length; int vaihto; for (int i = 0; i < maara / 2; i++) { // vaihdetaan kohtien taulu[i] ja taulu[maara - i - 1] sisältö vaihto = taulu[maara - i - 1]; taulu[maara - i - 1] = taulu[i]; taulu[i] = vaihto; } for (int i = 0; i < maara; i++) { System.out.println(taulu[i]); }
Tässä on ajatuksena, että ensin vaihdetaan keskenään taulukon ensimmäinen ja viimeinen alkio, sitten toinen ja toiseksi viimeinen alkio, sitten kolmas ja kolmanneksi viimeinen alkio jne. aina taulukon keskikohtaan asti.
Kahden taulukon alkion vaihtoon käytetään yllä olevassa koodissa apumuuttujaa, koska Javassa ei tietääkseni ole suorempaa tapaa tähän.
Integer[] taulu = {8, 2, 5, 4}; List<Integer> list = Arrays.asList(taulu); Collections.reverse(list); taulu = list.toArray(taulu);
Aihe on jo aika vanha, joten et voi enää vastata siihen.