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

  • AmeriiK_HD

    AmeriiK_HD

    16 AĞUSTOS 2012
  • case LianLi

    case LianLi

    28 Mayıs 2010
  • TV nEW

    TV nEW

    25 AĞUSTOS 2012