Comparator Interface

Java API içerisindeki birçok class(String, Date, Calendar, BigInteger, BıgDecimal ve tüm primitive tipler için olan numeric wrapper classlar) Comparable interface’ini implement eder. Bu Comparable interface’i, bu interface’i implement etmiş sınıfa ait elementleri karşılaştırmak için compareTo metodu tanımlar. Peki Comparable interface’ini implement etmeyen sınıfların elementleri nasıl karşılaştırılır? Bunun için java.util.Comparator<T> interface’i implement edilir ve compare metodu […]

List İnterface

List interface’i Collection interface’ini kalıtır ve elementleri ardışık olarak tutmak için collection tanımlar. Bir list oluşturmak için ArrayList veya LinkedList concrete classlar kullanılabilir. List içerisinde duplicate elementler tutulabilir. java.util.List<E> Metodları : +add(index: int, element: Object): boolean Belirtilen index’e element ekler. +addAll(index: int, c: Collection<? extends E>): boolean C’deki tüm elementleri list’e ekler. +get(index: int): E […]

Collection Interface

Collection element olarak tanımlanan bir grup nesneyi temsil eder. Collection interface’i maksimum genellik istenildiğinde kullanılır. Collectionlar, arguman olarak yine bir collection alabilecek constructorlara sahiptir.Bu constructor(conversion constructor) argüman olarak verilen collection ne olursa olsun, onun elementlerini içeren yeni bir collection oluşturur. Bu sayede collection tipini değiştirebiliriz. Örneğin Collection<String> c şeklinde List, Set veya diğer Collection türlerinde […]

Walking the File Tree

FileVisitor & SimpleFileVisitor Bir dosya ağacındaki tüm dosyaları recursive olarak gezmek istediğimizde FileVisitor interfaceini kullanılırız. FileVisitor implement edilirken gezme sürecinde belirli zamanlarda( erişimden önce, erişimden sonra, erişilirken, hata olursa gibi) yapılacaklar belirtilir. Bunun için 4 metod vardır. 1 – preVisitDirectory = Directory içerisindeki dosyalar ziyaret edilmeden önce çağırılır. 2 – postVisitDirectory = Directory içerisindeki dosyalar […]