bunun içinde 4 adet karakter 1 adet sayı var. Bunları bir arraylistte ayırıp topluyorum ama +dan iki adet olduğunu nasıl bastırabilirim.
Java dizi içinde sayma nasıl yapılır ?
9
●604
- 21-10-2019, 02:29:34Merhaba arkadaşlar java da string bir ifade içinde ki tekrarlayan karakterlerin kaç kere olduğunu bulmaya çalışıyorum bunun için öncelikle rakam ya da karakter ise bulup arraylist atıyorum fakat arraylist içinde ki bir karakterin kaç tane olduğunu nasıl bulabilirim. Örnek vermek gerekirse girilen ifade 1^+af%+
bunun içinde 4 adet karakter 1 adet sayı var. Bunları bir arraylistte ayırıp topluyorum ama +dan iki adet olduğunu nasıl bastırabilirim.
- 21-10-2019, 02:39:50Bu şekilde bir string içinde belirttiğin karakter kaç defa geçiyor bulabilirsin.<br><br>
String str = "meftuniberder";
char toCheck = 'e';
int count = 0;
for(char ch: str.toCharArray()){
if(ch == toCheck){
count++;
}
}
System.out.println(count);</pre><br> - 21-10-2019, 02:40:16
import java.util.*; // gerekli import ArrayList<Character> list = new ArrayList<Character>(); list.add('a'); list.add('a'); list.add('a'); list.add('a'); list.add('b'); list.add('b'); System.out.println("a" + " karakteri " + Collections.frequency(list, 'a') + " tane.."); System.out.println("b" + " karakteri " + Collections.frequency(list, 'b') + " tane.."); - 21-10-2019, 02:41:22hocam bu for döngüsünü tam anlayamadımonurturali adlı üyeden alıntı: mesajı görüntüle
- 21-10-2019, 02:45:45Hocam stringlerin temel mantığı dizidir. "toCharArray" ile stringin her bir karakterini dizi elemanı gibi gösteriyorsun.meftuniberder adlı üyeden alıntı: mesajı görüntüle
toCheck char tipinde bir değişken. For döngüsü her döndüğünde senin bu değişkenin toCharArray metotu sayesinde stringin her elemanını geziyor. Foreach gibi düşünebilirsin daha basit olarak.
(Şöyle düşün: ch değişkeni for her döndükçe değerlerini alıyor. toCheck[0], toCheck[1], toCheck[2] ...)
Eğer senin belirttiğin tocheck değişkenindeki değer ch ile yani mesela toCheck[0] ile eşleşince count 1 artıyor.
- Kodu daha okunabilir hale getirdim.
Edit:
Temel şu: stringi char dizisine çevir. Dizinin her elemanını senin belirttiğin char tipindeki bir değişken ile eşleştir. Eşleşme true sonuç döndürürse count 1 artsın.
String to char array için bu linke bakabilirsin: https://crunchify.com/java-simple-wa...to-char-array/ - 21-10-2019, 03:03:37hocalarım hepinize teşekkür ederim fakat tam oturtamadım çünkü ifade kullanıcıdan isteyeceğim yani her harf ya da her kelime için sorgu da yapamam kullanıcının girdiği değerin içinde ki karakter ve rakamları saydırmak istiyorum
- 21-10-2019, 03:06:56Hocam şimdi kullanıcının girdiği bir değerin içinde teker teker her harf ve her rakam kaç defa geçiyor onu bulmak istiyorsunuz. Doğru mu anladım.meftuniberder adlı üyeden alıntı: mesajı görüntüle
- 21-10-2019, 03:10:05Üyeliği durdurulduŞu linkten örneğe bakın, istediğiniz şey:
https://www.geeksforgeeks.org/counti...rray-elements/