HashMap ile Nesne kullanımı

Android Yazılım konuları
Cevapla
abdulkadirlevent
Site Admin
Mesajlar: 24
Kayıt: Pzr Oca 19, 2020 4:27 pm

HashMap ile Nesne kullanımı

Mesaj gönderen abdulkadirlevent »

HashMap ile Nesne kullanımı

Kod: Tümünü seç

import java.util.HashMap;
import java.util.Set;

public class HashMapNesneMain {

    public static void main(String args[]) {

        HashMap<Integer,Personel> personeller = new HashMap<>();

        // Yeni personeller olustur
        Personel p1 = new Personel(1,"Yusuf","Karakoyun",32);
        Personel p2 = new Personel(2,"Merve","Uzun",20);
        Personel p3 = new Personel(3,"Veysi","Kısa",18);
        Personel p4 = new Personel(4,"Cemal","Cefakar",42);
        Personel p5 = new Personel(5,"Yunus","Fedakar",34);
        
        // personelleri personeller HashMap içine aktar
        personeller.put(p1.getId(),p1);
        personeller.put(p2.getId(),p2);
        personeller.put(p3.getId(),p3);
        personeller.put(p4.getId(),p4);
        personeller.put(p5.getId(),p5);

        // Listedeki tüm keyleri al
        Set<Integer> personelKey = personeller.keySet();
        
        // Tum listeyi aktar
        for(Integer id:personelKey){
            System.out.println("Personel adı :" +personeller.get(id).getAdi());
        }
        
    }
}

abdulkadirlevent
Site Admin
Mesajlar: 24
Kayıt: Pzr Oca 19, 2020 4:27 pm

Re: HashMap ile Nesne kullanımı

Mesaj gönderen abdulkadirlevent »

Personel sınıfı

Kod: Tümünü seç

import android.support.annotation.NonNull;

public class Personel implements Comparable<Personel> {
    public int id;
    public String adi;
    public String soyadi;
    public int yasi;
    public static int sayac;

    public Personel() {
        sayac++;
    }

    public Personel(int id,String adi, String soyadi, int yasi) {
        sayac++;
        this.id = id;
        this.adi = adi;
        this.soyadi = soyadi;
        this.yasi = yasi;
    }

    public String getAdi() {
        return adi;
    }

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public void setAdi(String adi) {
        this.adi = adi;
    }

    public String getSoyadi() {
        return soyadi;
    }

    public void setSoyadi(String soyadi) {
        this.soyadi = soyadi;
    }

    public int getYasi() {
        return yasi;
    }

    public void setYasi(int yasi) {
        this.yasi = yasi;
    }

    public static int getSayac() {
        return sayac;
    }

    public static void setSayac(int sayac) {
        Personel.sayac = sayac;
    }

    /**
     * Yaşına veya adına göre otomatik sıralama
     * @param o
     * @return
     */
    @Override
    public int compareTo(@NonNull Personel o) {
        //return new Integer(this.yasi).compareTo(o.getYasi());
        return new String(this.adi).compareTo(o.getAdi());
    }

    @Override
    public int hashCode() {
        return this.id;
    }

    /**
     * Aynı verinin 2.kez kaydını engellemek için kullanılacak
     * @param obj
     * @return
     */
    @Override
    public boolean equals(Object obj) {
        if(this.id==((Personel)obj).getId()){
            return   true;
        }else{
            return false;
        }
    }
}

Cevapla