Wednesday, October 6, 2010

TreeSet Uygulamasi

public class TreeSetMain {
      public static void main(String[] args) {
//===============================================================
                  TreeSet times = new TreeSet();
                  times.add(1205); 
                  times.add(1505);
                  times.add(1545);
                  times.add(1830);
                  times.add(2010);
                  times.add(2100);
//=================================================================
 
                TreeSet subset = new TreeSet();
  //Yukarida gorulan TreeSet'in baska bir TreeSet aktaririken headSet methodu icine yazilan degrin 
//altindaki degerleri kopyaliyor
              subset = (TreeSet) times.headSet(2010);
              for (Integer i : subset) {
                     System.out.println(i);
              }
//===============================================================
              System.out.println("subset'teki en son deger : " + subset.last());
              System.out.println("times'taki en son deger : " + times.last());

//=================================================================


              System.out.println("subset'teki ilk deger : " + subset.first());
              System.out.println("times'taki ilk deger : " + times.first());
//=======================================================
              TreeSet sub2 = new TreeSet();
  //burada yine bir TreeSet'teki degeri baska bir TreeSet'aktarirken su sayidan buyuk olnlari aktar   // demek icin tailSet kullanilir.
              sub2 = (TreeSet) times.tailSet(2000);
              System.out.print("sub2 : ");
              for (Integer i : sub2) {
                     System.out.print(" " + i);
              }
              System.out.println();
//===========================================================
// Java 6 version ile beraber gelen lower() ve higher() methodlarinin kullanimi
            System.out.println("1600'de dusuk ilk deger : " + times.lower(1600));
            System.out.println("2000'de yuksek ilk deger : " + times.higher(2000));
//==========================================================
            System.out.println("1831 sahisinin varsa kendisi yoksa bir ust sayi doner : " + times.ceiling(1831));

//=================================================================
             System.out.println("1544 sayisi varsa kendisi yoksa bir alt deger doner : " + times.floor(1544));

//==================================================================
             System.out.println("TreeSet'teki ilk degeri donderir : " + times.pollFirst());
//===============================================================
             System.out.println("TreeSet'teki son degeri donderir : " + times.pollLast());
//=========================================================
             System.out.println("TreeSet icindeki degerleri sondan basa dogru okur");
             for (Integer i : times.descendingSet()) {
                    System.out.println(i);
             }

//===============================================
           TreeSet numbers = new TreeSet();
            numbers.add(123);
            numbers.add(111);
            numbers.add(234);
            numbers.add(10);
            numbers.add(322);
            numbers.add(213);
            numbers.add(3);

//Sayilari duzgun sirasiyla verir girilen siraya gore degilde kusukten buyuge gore siralar
           System.out.print("Number List : ");
           for (Integer number : numbers) {
                 System.out.print(" " + number);
           }
           System.out.println();
//=========================================================

           TreeSet names = new TreeSet();
           names.add("Abdulkadir");
           names.add("Ertugrul");
           names.add("Rasim");
           names.add("Ahmet");
           names.add("Mehmet");
           names.add("Nazim");
           names.add("Celil");
           names.add("Kenan");

//Karaktarleri girdiyi siraya gore degilde karekteri alfabetik siraya gore siralar
           System.out.print("Name List : ");
           for (String name : names) {
                 System.out.print(" " + name);
           }
           System.out.println();

//========================================================
           System.out.print("Delal ve Delal harf sirasindan once gelen tum isimlerin listesi : ");
           for (String name : names.headSet("Delal")) {
                  System.out.print(" " +name);
           }
           System.out.println();
      }
}

//Console Output
1205
1505
1545
1830
subset'teki en son deger : 1830
times'taki en son deger : 2100
subset'teki ilk deger : 1205
times'taki ilk deger : 1205
sub2 : 2010 2100
1600'de dusuk ilk deger : 1545
2000'de yuksek ilk deger : 2010
1831 sahisinin varsa kendisi yoksa bir ust sayi doner : 2010
1544 sayisi varsa kendisi yoksa bir alt deger doner : 1505
TreeSet'teki ilk degeri donderir : 1205
TreeSet'teki son degeri donderir : 2100
TreeSet icindeki degerleri sondan basa dogru okur
2010
1830
1545
1505
Number List : 3 10 111 123 213 234 322
Name List : Abdulkadir Ahmet Celil Ertugrul Kenan Mehmet Nazim Rasim
Delal ve Delal harf sirasindan once gelen tum isimlerin listesi : Abdulkadir Ahmet Celil
 

No comments:

Post a Comment