Java 8 ile gelen lambda işlemlerine ait bazı işlemleri bu yazıda inceleyeceğiz.

Sorting :

Java 8 öncesinde bir sort işlemi şöyle yapabiliyorduk:

Collections.sort(custList, new Comparator() {
 public int compare(Custmer c1, Customer c2){
  return c1.getId().compareTo(c2.getId());
 }
});

Java 8 ile gelen lambda işlemleri ile yukarıda yaptığımız işlemi tek bir satırda artık şöyle yazabiliriz:

custList.sort(Comparator.comparing(Customer::getId));

File Name Validation:

Java 8 öncesinde bir dosyayı validate edebilmek için aşağıdaki koda benzer bir metod yazmamız gerekiyordu.

File[] hiddenFiles = new File("directory_name").listFiles(new FileFilter() {
 public boolean accept(File file) {
  return file.getName().endsWith(".xml");
 }
});

Lambda işlemleri ile yukarıdaki yazdığımız kodu daha basitçe aşağıdaki gibi yazabiliriz.

File[] hiddenFiles = new File("directory_name").listFiles( file -> file.getName().endsWith(".xml"));

Dosya validation işlemine benzer olarak diyelim ki sadece gizli dosyaları almak istedik. Bunu java 8 öncesinde şöyle bir kod yazarak alabilirdik.

File[] hiddenFiles = new File("directory_name").listFiles(new FileFilter() {
 public boolean accept(File file) {
  return file.isHidden();
 }
});

Java 8 ve lambda işlemleri ile bu kodu yine tek satırda kolayca şöyle yazabiliriz.

File[] hiddenFiles = new File("directory_name").listFiles(File::isHidden);

Kaynaklar

https://www.javacodegeeks.com/2020/05/lambda-expressions-before-and-afterjava-8.html

Leave a Reply

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir