Startertutorials Blog
Tutorials and articles related to programming, computer science, technology and others.
Subscribe to Startertutorials.com's YouTube channel for different tutorial and lecture videos.

Categories: Strings. No Comments on Java program to print the frequency of characters in a string

In this article we will learn to implement a Java program to print the frequency of characters in a string. A Java program is provided below reads the string and gives the frequency of each character (number of times a character is repeated).

 

This java program reads a string from the user, calculates frequency of each character in the strings and displays the character followed by its frequency in ascending order.

 

We can maintain the count of each character by using the Map interface from collections framework. To maintain the ascending order, we can use TreeMap class.

 

The program is as follows:

import java.util.*;

public class Driver
{
	public static void main(String[] args)
	{
		System.out.println("Enter input: ");
		Scanner input = new Scanner(System.in);
		String s = input.next();
		input.close();
		TreeMap<Character, Integer> list = new TreeMap<Character, Integer>();
		for(Character c : s.toCharArray())
		{
			if(list.containsKey(c))
			{
				list.put(c, list.get(c)+1);
			}
			else
			{
				list.put(c, 1);
			}
		}
		for(Map.Entry e: list.entrySet())
		{
			//if((int)e.getValue() == 1)
			System.out.println(e.getKey() + " - " + e.getValue());
		}
	}
}

 

Input and output for the above program is as follows:

Input:
Enter input: 
yaadccdekp

Output:
a - 2
c - 2
d - 2
e - 1
k - 1
p - 1
y - 1

 

For displaying in insertion order, we can use LinkedHashMap class instead of TreeMap.

How useful was this post?

Click on a star to rate it!

We are sorry that this post was not useful for you!

Let us improve this post!

Tell us how we can improve this post?

Suryateja Pericherla

Suryateja Pericherla, at present is a Research Scholar (full-time Ph.D.) in the Dept. of Computer Science & Systems Engineering at Andhra University, Visakhapatnam. Previously worked as an Associate Professor in the Dept. of CSE at Vishnu Institute of Technology, India.

He has 11+ years of teaching experience and is an individual researcher whose research interests are Cloud Computing, Internet of Things, Computer Security, Network Security and Blockchain.

He is a member of professional societies like IEEE, ACM, CSI and ISCA. He published several research papers which are indexed by SCIE, WoS, Scopus, Springer and others.

Leave a Reply

Your email address will not be published. Required fields are marked *