2013-03-06 13 views
30

Mam problemy z konwersji pierwszego listu do kapitału w String:wielką literą w String

rackingSystem.toLowerCase(); // has capitals in every word, so first convert all to lower case 
StringBuilder rackingSystemSb = new StringBuilder(); 
rackingSystemSb.append(rackingSystem); 
rackingSystemSb.setCharAt(0, Character.toUpperCase(rackingSystemSb.charAt(0))); 
rackingSystem = rackingSystemSb.toString(); 

nie wydają się działać ..

jakieś sugestie?

Odpowiedz

68

spróbować zrobić:

rackingSystem = rackingSystem.toLowerCase(); 

Zamiast:

rackingSystem.toLowerCase(); 

Struny są niezmienne, należy przypisać wynik toLowerCase().

Łatwiej jednak (o ile ciąg jest większy niż długość 2):

rackingSystem = rackingSystem.substring(0,1).toUpperCase() + rackingSystem.substring(1).toLowerCase(); 
+5

'public static String wykorzystać (String s) { \t \t if (s == null) return zero; \t jeśli (s.length() == 1) { \t \t return s.toUpperCase(); \t \t} \t \t if (s.length()> 1) { \t \t \t powrotu s.substring (0,1) .toUpperCase() + s.substring (1); \t \t} \t \t return ""; \t} – Roel

18
StringBuilder rackingSystemSb = new StringBuilder(rackingSystem.toLowerCase()); 
rackingSystemSb.setCharAt(0, Character.toUpperCase(rackingSystemSb.charAt(0))); 
rackingSystem = rackingSystemSb.toString(); 
Powiązane problemy