Java ile Vector Sınıfı ve Kullanımı

Java ile Vector Sınıfı ve Kullanımı

Herkese merhalar, bu yazıda Java programlama dilindeki Vector sınıfından bahsedeceğiz. Eskiden beridir çokca kullanılan Vector sınıfı ile Javadaki nesnelerin dizi içerisinde tutulmasını konuşacağız.

Hadi başlayalım.

java.util paketinde bulunan Vector sınıfı Java programlama dilindeki Collection class tiplerinden birtanesidir. List sınıfınında implemente edilmesi ile List sınıfının komutlarıda kullanılabilmketedir.

Aşağıda Vector sınıfının hiyerarşi diagramı görülmektedir. Vector Sınıfının Hiyerarşi Diagramı

İlk olarak Vector sınıfı Ne iş yapar
Vector sınıfı, veri eklenip çıkarılmasına bağlı, dinamik olarak genişleyen ve daralan bir dizi sağlayıp, bu dizi içerisindeki elemanları sayısal index değerleri ile erişme olanağı tanımaktadır. Kullanımı Arraylistler gibidir, bununla beraber ArrayListlerde olmayan bazı fonksiyonlarıda içlerinde barındırırlar.
ArrayListler gibi nesnelerin eklenme sıralarını korur ve sayısal indexler ile kolayca ulaşılma imkanı sunar. Fakat Vector sınıfı senkronize bir şekilde çalıştığı için performans olarak biraz yavaş çalışmaktadır. Bu yüzden pek tercih edilmezler.

Vector nasıl tanımlanır

Vector sınıfı tanımlama

        int size = 33;
        int capIncrement = 55;
        
        Vector v1 = new Vector();
        Vector v2 = new Vector(size);
        Vector v3 = new Vector(size, capIncrement);
        
        ArrayList ar = new ArrayList();
        Vector v4 = new Vector(ar);
Yukarıdaki kod bloğunu inceleyelim:
  • Birinci yöntem ile direk olarak bir Vector nesnesi başlatılır ve default olarak size değer 10 olarak atanır ve kullanıma hazır hale gelir. Buradaki size değeri işlemlerimize göre değişebilir.
  • İkinci yöntem ile belirtilen bir size değeri ile Vector başlatılır ve kullanıma uygun hale gelir. Bu metod kullanacağımız nesne sayısı belli ise performansı arttırmak için kullanılır. ünkü yetersiz alan kalma kontrolü yapılmamış olur.
  • Üçüncü yöntem ile Vector başlatılırken size değeri ile birlikte birde kapasite arttırma değeri belirtmiş oluruz. Bu sayede Vector dizisine ekleme yapılırken taşma değerine ulaştığında, vektör kapasitesinin ne kadar arttırılacağı belirlenmiş olur.
  • Dördüncü yöntem ile Vector sınıfını başlatırken var olan bir Collection sınıfı dizisi ile başlar ve direk olarak o dizinin elemanlarına sahip olur.

Şimdi Vector sınıfı ile Javada örnekler yapalım.


    public static void vectorExample1(){
        
        //String sınıfı ile bir vector başlatılıyor
        Vector<String> names = new Vector<String>();
        
        //Oluşturulan vector sınıfına String eleman ekleniyor
        names.add("Burak");
        names.add("Hamdi");
        names.add("Tufan");
        names.add("The");
        names.add("Code");
        names.add("Program");
        
        //Eklemeden sonra vector dizisi içerikleri
        System.out.println("Vector içeriği : " + names);
        System.out.println("Vector boyutu : " + names.size() );
        
        //Vektörden eleman silme
        names.remove(1);
        names.remove(3);
        
        //Vektörden eleman silme işleminden sonra vektör bilgileri
        System.out.println("Vector içeriği : " + names);
        System.out.println("Vector boyutu : " + names.size() );        
    }
Program çıktısı

Vector içeriği : [Burak, Hamdi, Tufan, The, Code, Program]
Vector boyutu : 6
Vector içeriği : [Burak, Tufan, The, Program]
Vector boyutu : 4
BUILD SUCCESSFUL (total time: 0 seconds)
  • add metodu kullanılarak veri ekleme işlemi yapılabilir.
  • remove metodu ile de vectör dizisi içerisinden veri silinebilir.

Vectör classını Capacity Increment değeri ile test edelim:


    public static void vectorCapacityIncrement(){
        //Size 2 ve capacity increment 5 olan bir vector başlattık
        Vector vec = new Vector(2, 5);
        //For döngüsü içeirsinde değer ekleme esnasında size değeri capacity i geçerse
        //increment değeri kadar arttırılması beklenmektedir.
        for(int i=0; i<4; i++){
            vec.add(i);
            System.out.println("Vector size : " + vec.size() + " / Vector Capacity : " + vec.capacity());
        }
    }
Program çıktısı:

Vector size : 1 / Vector Capacity : 2
Vector size : 2 / Vector Capacity : 2
Vector size : 3 / Vector Capacity : 7
Vector size : 4 / Vector Capacity : 7
  • size metodu kullanılarak o anda vectör içerisinde kaç tane eleman var görebiliriz.
  • capacity metodu kullanılarak vectörün eleman kapasitesi alınabilmektedir.

Şimdi örneğimizi biraz daha geliştirelim:


    public static void vectorExample2(){
        
        //Bir sınıf belirtmeden vector başlattık
        Vector vec = new Vector();
        
        //String bazı değerler ekledik
        vec.add("Burak");
        vec.add("Hamdi");
        vec.add("TUFAN");
        
        //Integer bazı değerler ekledik
        vec.add(33);
        vec.add(41);
        vec.add(54);
        
        //Boolean bazı değerler ekledik
        vec.add(true);
        vec.add(false);
        vec.add(true);
        
        System.out.println("Vector içeriği : " + vec);
        System.out.println("Vector boyutu : " + vec.size() );   
        
        //Vector içerisindeki elemanların değerlerini değiştirelim
        vec.set(0, "The");
        vec.set(1, "Code");
        vec.set(2, "Program");
        
        System.out.println("Vector içeriği : " + vec);
        System.out.println("Vector boyutu : " + vec.size() );   
 
    }
Program Çıktısı

Vector içeriği : [Burak, Hamdi, TUFAN, 33, 41, 54, true, false, true]
Vector boyutu : 9
Vector içeriği : [The, Code, Program, 33, 41, 54, true, false, true]
Vector boyutu : 9
  • set metodu kullanılarak vectör içerisindeki belirli bir indexte bulunan eleman değiştirilebilir.

Son olarak birde For döngüsü ile kullanım örneği yapalım ve konumuzu bitirelim:


public static void forLoopsWithVector(){
        
        Vector<String> v = new Vector<String>();
        v.add("Burak");
        v.add("Hamdi");
        v.add("Tufan");
        
        for(int i=0; i<v.size(); i++){
            System.out.println(v.get(i));
        }
        
        for(Object o : v){
            System.out.println(o);
        }
    }
Program Çıktısı:

Burak
Hamdi
Tufan
Burak
Hamdi
Tufan

Bu yazıda Java progamlama dili ile Vector sınıfını kullanmış olduk.

Herkese iyi kodlamalar dilerim

Örnekteki kodların yazılı olduğu java dosyasına erişmek için aşağıdaki linke tıklayınız.
https://github.com/thecodeprogram/TheSingleFiles/blob/master/VectorExample.java

Burak hamdi TUFAN


Tags


Share this Post

Send with Whatsapp

Post a Comment

Success! Your comment sent to post. It will be showed after confirmation.
Error! There was an error sending your comment.

Comments

  • There is no comment. Be the owner of first comment...