Java cümledeki kelimelerin baş harfini büyük yapma

  • Konuyu başlatan Kéd
  • Başlangıç Tarihi
  • Mesaj 1
  • Görüntüleme 2.092

Kéd

Megapat
Katılım
2 Ocak 2016
Mesajlar
641
Çözümler
6
Daha fazla  
Cinsiyet
Erkek
Herkese merhaba,

Kullanıcı tarafından girilen String'in her kelimesinin baş harfini büyük harfe çeviren ve yeni String'i geriye döndüren bir metot üzerinde çalışıyorum. Burada array kullanmadan ve hazır fonksiyon olarak da sadece equals, charat ve length fonksiyonları kullanmak serbest. ASCII ile büyük harf çevirmelerini yapabilmekteyim fakat array kullanmadan nasıl string üzerinde dolaşıp her kelimenin baş harfine ulaşmaıyorum. Yardımcı olursanız çok sevinirim.
 
String.charAt(0) is gormuyor mu?

String'de birden fazla kelime varsa while ile length uzerinde donebilirsin.

Kodu test etmedim, calisiyorsa optimize & refactor edebilirsin.

Java:
public static void main(String[] args) {
    String x = "istanbul bu aralar pek soğuk azizim";
    String cap = "";
    int i = 0;
    while (i < x.length()) {
      if(i == 0){
        cap += capitalize(x.substring(i, i + 1));
        i++;
      }
      else if (x.charAt(i) == ' ') {
        cap += capitalize(x.substring(i, i + 2));
        i += 2;
      } else {
        cap += x.charAt(i);
        i++;
      }
    }
    System.out.println(cap);
  }

  public static String capitalize(String s) {
    // senin yazdigin capitalize fonksiyonu
    if(s.length() == 1){
      return s.toUpperCase(Locale.forLanguageTag("tr"));
    }
    return s.charAt(0) + s.substring(1).toUpperCase(Locale.forLanguageTag("tr"));
  }
 
Son düzenleme:

Technopat Haberler

Geri
Yukarı