Bir Kelimenin Kaç Defa Geçtiğini Bulmak

Bir ifade içinde her bir kelimenin kaç defa geçtiğini bulan programı Java ile nasıl yazabiliriz?

import java.util.HashMap;
import java.util.Map;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class Uygulama {

	public static void main(String[] args)
	{
		System.out.println("İfadeyi Yazınız:");
		
		String ifade = System.console().readLine();
		
		HashMap<String, Integer> kelimeler = new HashMap();
		
		Matcher matcher = Pattern.compile("[a-zA-ZçğıöşüÇĞİÖŞÜ]*").matcher(ifade);
		
		while (matcher.find())
		{
			String kelime = matcher.group(0);
			
			if (kelime.isEmpty()) continue;
			
			if (!kelimeler.containsKey(kelime))
				kelimeler.put(kelime,  1);
			else
				kelimeler.put(kelime, kelimeler.get(kelime) + 1);
		}
		
		for (Map.Entry<String, Integer> entry : kelimeler.entrySet())
		{
			System.out.println(entry.getKey() + " (" + entry.getValue() + " kez)");
		}
	}
}

 

Cevap Yaz

Cevap yazabilmek için üye girişi yapmanız gerekiyor!

Yukarı Git