Mustafa
Mustafa
Yurtdışı
06/03/2015 tarihinden beri üye
60 GY Puanı
49K GY Sırası

Kişisel Sayfaları

İlgi Alanları

2 Rozet
1 Sertifika
1 Soru Sordu
2 Cevap Verdi
0 Blog Yazısı
0 Etiket Takibi

Hakkında

İş Tecrubesi

Kullanıcıya ait İş tecrübesi bilgisi bulunmamaktadır.

Eğitim Geçmişi

Yurtdışı
| Aralık 2020 - Aralık 2020

Sertifikalar & Başarılar

GY Sertifikaları (1)
Android 101 Sertifikası
Veriliş Tarihi: Mart 2015
Diğer Sertifikaları (0)
Kullanıcıya ait sertifika bulunmamaktadır.
Test Sonuçları (0)

Kullanıcıya ait test sonucu bulunmamaktadır.

Dil Becerileri

Son Forum Aktiviteleri

3
Tümünü Gör

Javada karakter sayisi bulma

Iyi gunler,

Benim sorunum su; java'da bir program yaziyorum. Program bir text dosyasini acip veya kullanicinin yazdigi bir cumlenin icerisinde kac tane kelime, toplam karakter sayisi, bosluk sayisi oldugunu bulup gosteriyor. Ihtiyacim olan hangi harften kac tane oldugunu da gostermesi. "Kelime icerisinde hangi harfi bulmak istiyorsun" degil de, mesela "hello world" cumlesinde h=1, e=1, l=3, o=2, w=1, r=1, d=1" seklinde. hashMap kullandim ancak bu sekilde butun karakterleri (noktalamalar ve ozel karakterler(%,&,{,[,})) de gosteriyor. Benim ihtiyacimsa sadece buyuk kucuk harf farketmeksizin hangi harften kac tane oldugu. GUI da jtextArea uzerinden analiz ediyorum cumleleri. Kullandigim compiler NetBeans. Cok tesekkur ederim simdiden.

Javada karakter sayisi bulma

12 Mart 2015 tarihinde cevaplandı

Arkadaslar hallettim derdimi. Eger isine yarayacak olursa, burdan alabilirler.

 

public static void main(String[] args) { 


    String sentence = "merhaba dunya. naaptin o isler?";
    sentence = sentence.toLowerCase();
// Bulmak istedigimiz karakterlerin haritasini cikariyoruz. Buraya istediginiz karakteri ekleyip cikarabilirsiniz.
// Ben sadece numara ve harfleri kullaniyorum.
    String indexes = "0123456789abcdefghijklmnopqrstuvwxyz.?";

//Initialize an array to the size of the possible matches.
    int[] count = new int[indexes.length()];
    
//Bulmak istedigimiz karakterleri kelimelerde aramak icin LOOP kullaniyoruz burada.
    for (int i = 0; i < sentence.length(); i++) {
    //Eger haritamizdaki karakterlerle uyusma varsa, karakter sayisini arttirir ve aramaya devam eder.
    int index = indexes.indexOf(sentence.charAt(i));

    //Eger aradigimiz karakterlerin hicbirini bulmazsak, yani girilen karakter haritada yoksa, system -1 gonderir.
    // ornek verecek olursak karakter olarak "<>.{};:@' gibi karakterler kullanirsak, bunlar haritamizda olmadigi icin bulmaz.
    if (index < 0)
        continue;

    count[index]++;

    }
    for (int i = 0; i < count.length; i++) {
    if (count[i] < 1)
        continue;

    System.out.println(String.format("%s (%d) %s",
            indexes.charAt(i),
            count[i],
            //Buradada buldugumuz karakter sayisi kadar * print yapmak icin bu kodu kullaniyoruz.
            new String(new char[count[i]]).replace('\0', '*')));
    }
}

Javada karakter sayisi bulma

06 Mart 2015 tarihinde cevaplandı

Zamaniniz ve cevabiniz icin cok tesekkurler. Linklerdeki kodlar daha cok kelime sayimi icin. Ben kelime sayimini yazmistim ama linklerin birinde daha iyi bir kod vardi onunla degistirdim. Bana daha cok karakter sayimi lazim. Elimdeki kod HashMap ve ciktida butun karakterler gorunuyor ve karakterlerin isimlerini degistiremiyorum. Mesela kac satir oldugunu gosteriyor ama onu "Satir sayisi :" seklinde degistiremiyorum. Su an aklima butun karakterler icin bi for loop yazmak geliyor ama bu iyi bir kod degil. Cok fazla kodu bosuna yazmis olacagim. Daha cok mesela alfabeyi bir array icine yazip herbir karakteri tek tek bu array icinde saydirmak gibi birsey olabilir. Cevabin icin tekrar tesekkur ederim.