Java'da Girdi/Çıktı ve Akışlar
Alex Liu
Software Development Engineer
Akışlarla veri dönüşümü
List → Set)ArrayList, LinkedList)HashSet, TreeSet)Keys/Values Streams olarak) (örn. HashMap, TreeMap)Arrays.stream() ile)Video boyunca kullanacağımız names adlı ArrayList örneği
names: ["Alice", "Bob", "Charlie", "David"]
Set, Collectors ve Stream sınıflarını içe aktarınimport java.util.Set; import java.util.stream.Collectors; import java.util.stream.Stream;// Önce oluşturduğumuz `names` `ArrayList`ini bir `Stream`e dönüştürün Stream<String> namesStream = names.stream();
[Alice, Bob, Charlie, David]// Her ögeyi büyük harfe çevirmek için `.map()` kullanın
Stream<String> upperCaseNameStream = namesStream.map(
name -> name.toUpperCase())
[ALICE, BOB, CHARLIE, DAVID]// Dönüştürülen akış verisini saklamak için `.collect()` ve `Collectors.toSet()` kullanın
upperCaseNameStream.collect(Collectors.toSet())
{CHARLIE, ALICE, BOB, DAVID}
.reduce() yöntemi
.reduce() iki girdi alır
0(x, y) -> x + y şu anlama gelir:x biriken toplamı temsil edery işlenen mevcut ögeyi temsil edery’yi x’e eklernames ArrayListini bir Stream nesnesine dönüştürün.Stream<String> stream = names.stream();
.map() ile adı uzunluğa çevirin ve .reduce() ile toplayınstream
.map(name -> name.length())
.reduce(0, (sum, length) -> sum + length);
20Java'da Girdi/Çıktı ve Akışlar