2013-06-26 18 views
11

Bilinmeyen uzunlukta (ancak boş değil) bir str dizgisi ve verilen bir maksimum uzunluk len var, bu sığdırmak zorunda. Tüm yapmak istediğim, dizeyi len olarak kesmektir.Java dizeleri için bir sol() - işlevi var mı?

ben

str.substring(0, Math.min(len, str.length())); 

kullanabilirsiniz ama bu

code = str.replace(" ", "").left(len) 
Ben kendi fonksiyonunu yazma biliyor

ama gibi yığılmış kod yazmak çalışırsanız bu, kullanışlı gelmiyor biliyorum Mevcut bir çözümü tercih ederim. Java'da mevcut bir sol() - işlevi var mı?

+4

Hayır, yok - ne Java 'String' sınıfında var. Ek yöntemleri olan dış kütüphaneler olabilir veya kendiniz yazabilirsiniz. –

+1

Hiçbir şey yerleşik değil, ancak Apache commons uygun bir [sol] olan StringUtils sınıfına sahiptir (http://commons.apache.org/proper/commons-lang//apidocs/org/apache/commons/lang3/StringUtils. html # left% 28java.lang.String,% 20int% 29) sizin için işlev. –

cevap

15

Hiçbir şey yerleşik değil, ancak Apache commons sizin için uygun bir left işlevine sahip StringUtils sınıfına sahiptir.

3

Hala Eğer şöyle istediğiniz şekilde kullanabilirsiniz:: Ayrıca bunu kontrol edebilirsiniz

String string = (string.lastIndexOf(",") > -1)?string.substring(0, string.lastIndexOf(",")): string; 
İlgili konular