SHARE
TWEET

Untitled

a guest Aug 19th, 2019 70 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. public class OptionalMethodsExample {
  2.     public static void main(String[] args) throws Exception {
  3.         String name = "Faruk";
  4.         String surname = null;
  5.  
  6.         Optional<String> optionalOfName = Optional.of(name);
  7.         // surname variable'ı null değer içerdiğinden NullPointerException fırlatır.
  8.         // Optional<String> optionalOfNSurname = Optional.of(surname);
  9.         Optional<String> optionalOfNullableName = Optional.ofNullable(name);
  10.         Optional<String> optionalOfNullableSurname = Optional.ofNullable(surname);
  11.  
  12.         // get metodu
  13.  
  14.         System.out.println(optionalOfName.get()); // Çıktı : Faruk
  15.         System.out.println(optionalOfNullableName.get()); // Çıktı : Faruk
  16.         // Null değer içeren bir nesneyi get ile yazdırmak istersek NoSuchElementException hatası alırız.
  17.         // System.out.println(optionalOfNullableSurname.get());
  18.  
  19.         // isPresent metodu
  20.  
  21.         boolean isPresentSurname = optionalOfNullableSurname.isPresent();
  22.         System.out.println(isPresentSurname); // false dönecektir çünkü surname variable'ı null değer içeriyor.
  23.         boolean isPresentName = optionalOfName.isPresent();
  24.         System.out.println(isPresentName); // true dönecektir çünkü name alanı tanımlanmıştır.
  25.  
  26.         // ifPresent metodu
  27.  
  28.         optionalOfName.ifPresent(n -> System.out.println(n.toUpperCase())); // Consumer tipinde bir iş bekler. Çıktı : FARUK olur.
  29.  
  30.         // orElse metodu
  31.  
  32.         String soyisim = optionalOfNullableSurname.orElse("Genç");
  33.         System.out.println(soyisim); // Çıktı : Genç
  34.  
  35.         // orElseGet metodu
  36.  
  37.         String fullName = optionalOfNullableSurname.orElseGet(() -> optionalOfName.get() + " Genç");
  38.         System.out.println(fullName); // Çıktı : Faruk Genç
  39.  
  40.         // orElseThrow metodu
  41.  
  42.         // optionalOfNullableSurname.orElseThrow(Exception::new); // Çıktı : Exception in thread "main" java.lang.Exception
  43.  
  44.         // map metodu
  45.  
  46.         Optional<Boolean> aBoolean = optionalOfName.map(String::isEmpty);
  47.         System.out.println(aBoolean.get()); // Çıktı : false
  48.  
  49.         // filter metodu
  50.  
  51.         optionalOfName.filter(word -> word.contains("F")).ifPresent(System.out::println); // F harfi içerenleri filtreleyip ekrana yazdık. Çıktı : Faruk
  52.     }
  53. }
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
Not a member of Pastebin yet?
Sign Up, it unlocks many cool features!
 
Top