Liste Java'da, bakımın yapılması olanağı sağlar sipariş edilen koleksiyon . Öğeleri eklemek, güncellemek, silmek ve aramak için indeks tabanlı yöntemleri içerir. Aynı zamanda yinelenen öğelere de sahip olabilir. Ayrıca boş elemanları da listede saklayabiliriz.
Liste arayüzü şurada bulunur:java.utilpaketini oluşturur ve Koleksiyon arayüzünü devralır. ListIterator arayüzünün bir fabrikasıdır. ListIterator aracılığıyla listeyi ileri ve geri yönde yineleyebiliriz. Liste arayüzünün uygulama sınıfları şunlardır:Dizi Listesi,Bağlantılı liste, Yığın ve Vektör. ArrayList ve LinkedList, Java programlamada yaygın olarak kullanılır. Vector sınıfı Java 5'ten beri kullanımdan kaldırılmıştır.
Arayüz bildirimini listele
public interface List extends Collection
Java Liste Yöntemleri
Yöntem | Tanım | |
---|---|---|
void add(int indeksi, E öğesi) | Belirtilen öğeyi listede belirtilen konuma eklemek için kullanılır. | |
boole ekleme(E e) | Belirtilen elemanı listenin sonuna eklemek için kullanılır. | |
boolean addAll(Koleksiyon c) | Belirtilen koleksiyondaki tüm öğeleri listenin sonuna eklemek için kullanılır. | |
boolean addAll(int dizini, Koleksiyon c) | Listenin belirtilen konumundan başlayarak, belirtilen koleksiyondaki tüm öğeleri eklemek için kullanılır. | |
geçersiz temizleme() | Bu listedeki tüm öğeleri kaldırmak için kullanılır. | |
boole eşittir (Nesne o) | Belirtilen nesneyi bir listenin öğeleriyle karşılaştırmak için kullanılır. | |
int hashcode() | Bir listenin karma kod değerini döndürmek için kullanılır. | |
E get(int indeksi) | Listenin belirli bir konumundan öğeyi getirmek için kullanılır. | |
boolean isEmpty() | Liste boşsa true, değilse false değerini döndürür. | |
int lastIndexOf(Object o) | Belirtilen öğenin son oluşumunun bu listedeki indeksini döndürmek için veya liste bu öğeyi içermiyorsa -1'i döndürmek için kullanılır. | |
Object[] toArray() | Bu listedeki tüm elemanları içeren bir diziyi doğru sırayla döndürmek için kullanılır. | |
T[] toArray(T[] a) | Bu listedeki tüm elemanları içeren bir diziyi doğru sırayla döndürmek için kullanılır. | |
boolean içerir(Nesne o) | Liste belirtilen öğeyi içeriyorsa true değerini döndürür | |
boolean içerirTümü(Koleksiyon c) | Liste belirtilen öğenin tümünü içeriyorsa true değerini döndürür | |
int indexOf(Nesne o) | Belirtilen öğenin ilk geçtiği yerin bu listedeki indeksini döndürmek için veya Liste bu öğeyi içermiyorsa -1'i döndürmek için kullanılır. | |
E kaldır(int dizini) | Listede belirtilen konumda bulunan elemanı kaldırmak için kullanılır. | |
boolean kaldır (Nesne o) | Belirtilen öğenin ilk oluşumunu kaldırmak için kullanılır. | |
boolean RemoveAll(Koleksiyon c) | Listedeki tüm elemanları kaldırmak için kullanılır. | |
void replacementAll(UnaryOperator operatörü) | Listedeki tüm elemanları belirtilen elemanla değiştirmek için kullanılır. | |
void keepAll(Koleksiyon c) | Belirtilen koleksiyonda bulunan listedeki tüm öğeleri korumak için kullanılır. | |
E set(int indeksi, E elemanı) | Listede belirtilen konumda bulunan belirtilen öğeyi değiştirmek için kullanılır. | |
geçersiz sıralama (Karşılaştırıcı c) | Listenin elemanlarını belirtilen karşılaştırıcıya göre sıralamak için kullanılır. | |
Ayırıcı bölücü() | Bir listedeki öğeler üzerinde ayırıcı oluşturmak için kullanılır. | |
subList'i listele(int fromIndex, int toIndex) | Verilen aralıkta yer alan tüm elemanları getirmek için kullanılır. | |
int boyut() | Listedeki elemanların sayısını döndürmek için kullanılır. |
Java Listesi ve ArrayList karşılaştırması
List bir arayüzdür, ArrayList ise List'in uygulama sınıfıdır.
Liste nasıl oluşturulur?
ArrayList ve LinkedList sınıfları List arayüzünün uygulanmasını sağlar. Liste oluşturmak için örneklere bakalım:
//Creating a List of type String using ArrayList List list=new ArrayList(); //Creating a List of type Integer using ArrayList List list=new ArrayList(); //Creating a List of type Book using ArrayList List list=new ArrayList(); //Creating a List of type String using LinkedList List list=new LinkedList();
Kısacası istediğiniz türden Liste oluşturabilirsiniz. ArrayList ve LinkedList sınıfları türü belirtmek için kullanılır. Burada T tipi ifade etmektedir.
Java Listesi Örneği
Uygulama olarak ArrayList sınıfını kullandığımız basit bir List örneğini görelim.
import java.util.*; public class ListExample1{ public static void main(String args[]){ //Creating a List List list=new ArrayList(); //Adding elements in the List list.add('Mango'); list.add('Apple'); list.add('Banana'); list.add('Grapes'); //Iterating the List element using for-each loop for(String fruit:list) System.out.println(fruit); } }Şimdi Test Edin
Çıktı:
Mango Apple Banana Grapes
Diziyi Listeye dönüştürme
Diziyi dolaşıp list.add() yöntemini kullanarak listedeki öğeleri tek tek ekleyerek Diziyi Listeye dönüştürebiliriz. Dizi elemanlarını Listeye dönüştürmek için basit bir örnek görelim.
import java.util.*; public class ArrayToListExample{ public static void main(String args[]){ //Creating Array String[] array={'Java','Python','PHP','C++'}; System.out.println('Printing Array: '+Arrays.toString(array)); //Converting Array to List List list=new ArrayList(); for(String lang:array){ list.add(lang); } System.out.println('Printing List: '+list); } }Şimdi Test Edin
Çıktı:
Printing Array: [Java, Python, PHP, C++] Printing List: [Java, Python, PHP, C++]
Listeyi Diziye dönüştürme
List.toArray() yöntemini çağırarak List'i Array'e dönüştürebiliriz. Liste öğelerini diziye dönüştürmek için basit bir örnek görelim.
tarçın vs dostum
import java.util.*; public class ListToArrayExample{ public static void main(String args[]){ List fruitList = new ArrayList(); fruitList.add('Mango'); fruitList.add('Banana'); fruitList.add('Apple'); fruitList.add('Strawberry'); //Converting ArrayList to Array String[] array = fruitList.toArray(new String[fruitList.size()]); System.out.println('Printing Array: '+Arrays.toString(array)); System.out.println('Printing List: '+fruitList); } }Şimdi Test Edin
Çıktı:
Printing Array: [Mango, Banana, Apple, Strawberry] Printing List: [Mango, Banana, Apple, Strawberry]
Listedeki Öğeyi Al ve Ayarla
get() yöntemi verilen dizindeki öğeyi döndürür, oysa set() yöntemi öğeyi değiştirir veya değiştirir.
jdüğmesi
import java.util.*; public class ListExample2{ public static void main(String args[]){ //Creating a List List list=new ArrayList(); //Adding elements in the List list.add('Mango'); list.add('Apple'); list.add('Banana'); list.add('Grapes'); //accessing the element System.out.println('Returning element: '+list.get(1));//it will return the 2nd element, because index starts from 0 //changing the element list.set(1,'Dates'); //Iterating the List element using for-each loop for(String fruit:list) System.out.println(fruit); } }Şimdi Test Edin
Çıktı:
Returning element: Apple Mango Dates Banana Grapes
Liste Nasıl Sıralanır?
Listeyi sıralamanın çeşitli yolları vardır; burada liste öğesini sıralamak için Collections.sort() yöntemini kullanacağız. java.util paket bir yardımcı program sınıfı sağlar Koleksiyonlar statik yöntem sort()'a sahip olan. Kullanmak Koleksiyonlar.sort() yöntemiyle herhangi bir Listeyi kolayca sıralayabiliriz.
import java.util.*; class SortArrayList{ public static void main(String args[]){ //Creating a list of fruits List list1=new ArrayList(); list1.add('Mango'); list1.add('Apple'); list1.add('Banana'); list1.add('Grapes'); //Sorting the list Collections.sort(list1); //Traversing list through the for-each loop for(String fruit:list1) System.out.println(fruit); System.out.println('Sorting numbers...'); //Creating a list of numbers List list2=new ArrayList(); list2.add(21); list2.add(11); list2.add(51); list2.add(1); //Sorting the list Collections.sort(list2); //Traversing list through the for-each loop for(Integer number:list2) System.out.println(number); } }
Çıktı:
Apple Banana Grapes Mango Sorting numbers... 1 11 21 51
Java ListIterator Arayüzü
ListIterator Arayüzü, öğeyi ileri ve geri yönde hareket ettirmek için kullanılır.
ListIterator Arayüz bildirimi
public interface ListIterator extends Iterator
Java ListIterator Arayüzünün Yöntemleri:
Yöntem | Tanım |
---|---|
geçersiz ekleme(E e) | Bu yöntem belirtilen öğeyi listeye ekler. |
Boolean hasNext() | Bu yöntem, liste yineleyicisinin listeyi ileri yönde dolaşırken daha fazla öğeye sahip olması durumunda true değerini döndürür. |
E sonraki() | Bu yöntem listedeki bir sonraki öğeyi döndürür ve imleç konumunu ilerletir. |
int nextIndex() | Bu yöntem, sonraki bir çağrı tarafından next() işlevine döndürülecek öğenin dizinini döndürür. |
boolean hasÖnceki() | Bu yöntem, bu liste yineleyicisinin listeyi ters yönde dolaşırken daha fazla öğeye sahip olması durumunda true değerini döndürür. |
E önceki() | Bu yöntem listedeki bir önceki öğeyi döndürür ve imleç konumunu geriye doğru hareket ettirir. |
E öncekiIndex() | Bu yöntem, önceki() işlevine yapılan sonraki çağrıyla döndürülecek öğenin dizinini döndürür. |
geçersiz kaldırma() | Bu yöntem, next() veya önceki() yöntemleri tarafından döndürülen listedeki son öğeyi kaldırır. |
geçersiz küme(E e) | Bu yöntem, next() veya önceki() yöntemleri tarafından döndürülen son öğeyi belirtilen öğeyle değiştirir. |
ListIterator Arayüzü Örneği
import java.util.*; public class ListIteratorExample1{ public static void main(String args[]){ List al=new ArrayList(); al.add('Amit'); al.add('Vijay'); al.add('Kumar'); al.add(1,'Sachin'); ListIterator itr=al.listIterator(); System.out.println('Traversing elements in forward direction'); while(itr.hasNext()){ System.out.println('index:'+itr.nextIndex()+' value:'+itr.next()); } System.out.println('Traversing elements in backward direction'); while(itr.hasPrevious()){ System.out.println('index:'+itr.previousIndex()+' value:'+itr.previous()); } } }
Çıktı:
Traversing elements in forward direction index:0 value:Amit index:1 value:Sachin index:2 value:Vijay index:3 value:Kumar Traversing elements in backward direction index:3 value:Kumar index:2 value:Vijay index:1 value:Sachin index:0 value:Amit
Liste Örneği: Kitap
Kitapları eklediğimiz bir Liste örneğini görelim.
import java.util.*; class Book { int id; String name,author,publisher; int quantity; public Book(int id, String name, String author, String publisher, int quantity) { this.id = id; this.name = name; this.author = author; this.publisher = publisher; this.quantity = quantity; } } public class ListExample5 { public static void main(String[] args) { //Creating list of Books List list=new ArrayList(); //Creating Books Book b1=new Book(101,'Let us C','Yashwant Kanetkar','BPB',8); Book b2=new Book(102,'Data Communications and Networking','Forouzan','Mc Graw Hill',4); Book b3=new Book(103,'Operating System','Galvin','Wiley',6); //Adding Books to list list.add(b1); list.add(b2); list.add(b3); //Traversing list for(Book b:list){ System.out.println(b.id+' '+b.name+' '+b.author+' '+b.publisher+' '+b.quantity); } } }Şimdi Test Edin
Çıktı:
101 Let us C Yashwant Kanetkar BPB 8 102 Data Communications and Networking Forouzan Mc Graw Hill 4 103 Operating System Galvin Wiley 6
İlgili konular
ArrayList ve LinkedList arasındaki fark
Dizi ve ArrayList arasındaki fark
Java'da ArrayList ve LinkedList ne zaman kullanılır?
ArrayList ve Vector arasındaki fark
Java'da İki ArrayList Nasıl Karşılaştırılır
Java'da ArrayList nasıl tersine çevrilir
Java'da ArrayList ve LinkedList ne zaman kullanılır?
java sıralama listesi
ArrayList'i Salt Okunur hale getirme
Java'da ArrayList'in dizi uzunluğu ile size() arasındaki fark
Java'da ArrayList nasıl senkronize edilir
Java'da ArrayList'i Array'e ve Array'i ArrayList'e dönüştürme
Java'da Array ve ArrayList karşılaştırması
Java ArrayList'i Azalan Sırada Sıralama
Java'da ArrayList'ten kopyalar nasıl kaldırılır