SORU
15 EKİM 2008, ÇARŞAMBA


/Dizi/Liste koleksiyonundan virgülle ayrılmış Dize oluşturmak için en gelişmiş yol?

Veritabanları ile yaptığım çalışma sırasında sorgu dizeleri yazmak olduğunu fark ettim ve bu dizeleri burada imleç listesinden/dizi/koleksiyon içinde çeşitli kısıtlamalar koymak zorunda kalıyorum. Bu gibi görünmelidir:

select * from customer 
where customer.id in (34, 26, ..., 2);

Dizeleri koleksiyonu olan soru bu azaltarak bu basitleştirmek ve tek bir dize bu dizeleri virgülle ayrılmış bir listesini oluşturmak istiyor.

Şimdiye kadar kullandığım yaklaşımım böyle bir şey

String result = "";
boolean first = true;
for(String string : collectionOfStrings) {
    if(first) {
        result =string;
        first=false;
    } else {
        result ="," string;
    }
}

Ama bu çok çirkin gördüğünüz gibi. Özellikle inşa dizeleri (her SQL sorgu gibi) karmaşık bir hal olduğunda ne olur orada ilk bakmak görmek, yapamazsınız.

(Daha fazla) zarif yolu nedir?

CEVAP
15 EKİM 2008, ÇARŞAMBA


Kullanım Google Guava API'join yöntem:

Joiner.on(",").join(collectionOfStrings);

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • KoreanFrogMania님의 채널

    KoreanFrogMa

    18 Aralık 2011
  • Matthew Smith

    Matthew Smit

    24 Mayıs 2010
  • sonia989

    sonia989

    26 EKİM 2006