CodeBlanks Logo Icon CodeBlanks

joining

Collectors.joining ile dize birleştirmeyi öğrenirsin.

Dizgileri birleştirme: joining

Collectors.joining akıştaki dizgileri tek bir dizgide birleştirir. En basit sürümü hiç ayraç almaz; dizgileri doğrudan üç uca ekler. Ayraçlı sürüm elemanların arasına bir ayraç koyar.

Örnek: names.stream().collect(Collectors.joining(", ")). Bu çağrı "Ayşe, Mert, Selin" gibi tek bir dizgi döndürür. Ayraç yalnızca elemanlar arasına konur; başa ve sona eklenmez. Sonuç her zaman String türündedir.

joining ile ön ek ve son ek

Üç parametreli joining aşırı yüklemesi ayraç, ön ek ve son ek alır. Bu, bir listeden tek satırlık bir metin üretmek için kullanışlıdır.

Örnek: Collectors.joining(", ", "[", "]"). Bu çağrı "[Ayşe, Mert, Selin]" gibi bir dizgi döndürür. Ayraç elemanlar arasında, ön ek başta, son ek sonda yer alır. Boş akışta yalnızca ön ek ve son ek birleşir; ayraç hiç kullanılmaz.

Uygulama Adları virgülle birleştir

Üç addan oluşan bir liste oluştur. Akışı Collectors.joining(", ") ile birleştir ve sonucu System.out.println ile yazdır. Çıktı tek satır olmalı.

Başlangıç kodu

Main.java
import java.util.List;
import java.util.stream.Collectors;

// Adları virgülle birleştir
// Collectors.joining kullan
// Sonucu yazdır

Örnek çözüm

Main.java
import java.util.List;
import java.util.stream.Collectors;

public class JoinNames {
    public static void main(String[] args) {
        List<String> names = List.of("Ayşe", "Mert", "Selin");
        String result = names.stream().collect(Collectors.joining(", "));
        System.out.println(result);
    }
}

Beklenen çıktı

Ayşe, Mert, Selin

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 names.stream().collect(Collectors.joining(", ")) ne döndürür?

  • String Doğru cevap
  • Map<String, String>
  • List<String>
  • Optional<String>

Açıklama: joining her zaman String döndürür.

2 joining çağrısını tamamla

Soru
String result = names.stream()
    .collect(Collectors.joining(____));
Cevap
String result = names.stream()
    .collect(Collectors.joining(", "));

Açıklama: Virgül ve boşluk doğru ayracı verir.

3 joining aşırı yüklemelerini eşleştir

Kavram Anlamı
joining() Üç uca ekler
joining(delim) Ayraca göre böler
joining(delim, pre, suf) Ön ek ve son ek ekler

İleri seviye bölümündeki tüm dersler