BİLGİ SAYAMIYORUM beta

Java da bir array den Java.Util.List ve Java.Util.ArrayList nasıl yaratılır?

0

Java da konu veri tipleri olduğundan işler biraz karışıyor, zaten ne zaman karışmıyor diyebilirsiniz ama bu biraz değişik bir alan. Yıllar içerisinde her şeyin obje olması ama bazı şeylerin olmaması, sabit değerli veriler, değişken veriler filan derken biraz gerginlik yaşayabilirsiniz, çok normal. Çözümü ise zor değil sadece alışkanlıklar edinmeye dayanıyor bence, mesela elinizde bir array var ve bunu sabit sayıda öğesi olan bir listeye çevirmek istiyorsunuz:

int[] puanListesi = {5,7,12};
List<int> yeniListe = Arrays.asList(puanListesi);

Öncelikle puan listesi bir int array olduğu için yeni List öğemiz de int tipinde olmalı. Ancak bu yeniListe bir ArrayList olmadığı için boyutu sabit (fixed size) olacaktır. Diğer bir yandan önceki puanListesi öğesinden türediği için ona bağlı olduğundan o listede yapılan bir değişiklik buna da yansıyacaktır. Tabii Java5 ten sonra asList fonksiyonu argüman aldığı için, listeyi onun parantezleri dahilinde de yazabilirsiniz. 

Eğer array i boyutu sabit olmayan bir ArrayList e dönüştürmek isterseniz, öncelikle tiplerinin aynı olması olması gerektiği için <T> şeklinde kullanırsanız T nin array ile aynı tipte olmasına dikkat edin. Yoksa zaten o tipte oluşacaktır:

int[] puanListesi = {5,7,12};
new ArrayList<>(Arrays.asList(puanListesi));

Yani bahsettiğim dönüşümü konu alan basit bir Java programını şu şekilde örnekleyebilirim:

import java.lang.Math;
import java.util.ArrayList;
import java.util.Arrays;

public class Hello{
     public static void main(String[] args){
          ArrayList<Integer> yeniListe = new ArrayList<Integer>(Arrays.asList(5,7,12));
          System.out.print(yeniListe);
     }
}

Sonuç olarak :[5, 7, 12] dönecektir.

BENZER 7

Kimse etkileşime girmemiş

ETİKETLER