Java Program to check for Duplicate Characters
Program
import java.util.HashMap;
import java.util.Map;
import java.util.Set;
import java.util.Scanner;
public class DuplicateCharactersCheck {
public void countDuplicateChar(String string){
Map<Character, Integer> countMap = new HashMap<Character, Integer>();
char[] characters = string.toCharArray();
for(Character ch:characters){
if(countMap.containsKey(ch)){
countMap.put(ch, countMap.get(ch)+1);
} else {
countMap.put(ch, 1);
}
}
Set<Character> keys = countMap.keySet();
for(Character ch:keys){
if(countMap.get(ch) > 1) {
System.out.println(ch+" "+countMap.get(ch));
}
else{
System.out.println("No Duplicate characters present");
}
}
}
public static void main(String[] args){
DuplicateCharactersCheck duplicateCharactersCheck = new DuplicateCharactersCheck();
System.out.println("Example String 1: www.oodlescoop.com");
duplicateCharactersCheck.countDuplicateChar("www.oodlescoop.com");
System.out.println("\nExample String 2: Engineering");
duplicateCharactersCheck.countDuplicateChar("Engineering");
Scanner reader = new Scanner(System.in);
System.out.println("Enter a string: ");
String enteredString = reader.next();
System.out.println("Duplicate Count for string : "+ enteredString +" is: ");
duplicateCharactersCheck.countDuplicateChar(enteredString);
}
}
Output
$ javac DuplicateCharactersCheck.java
$ java DuplicateCharactersCheck
Example String 1: www.oodlescoop.com
c 2
w 3
. 2
o 5
Example String 2: Engineering
e 2
g 2
i 2
n 3
Enter a string:
Programming
Duplicate Count for string : Programming is:
r 2
g 2
m 2