Replace every third (3rd) duplicate character in string with dollor $- Java

 import java.util.HashMap;

import java.util.Iterator;

public class test1 {
public static void main(String[] args) {

StringBuilder abc = new StringBuilder("dbbababtradd");
System.out.println("Input String :"+abc);

HashMap<Character,Integer> hm = new HashMap<>();
HashMap<Character,Integer> hmIndex = new HashMap<>();

for(int i =0;i<abc.length();i++){
if(!hm.containsKey(abc.charAt(i))){
hm.put(abc.charAt(i),1);
}else{
hm.put(abc.charAt(i),hm.get(abc.charAt(i))+1);
if(hm.get(abc.charAt(i))==3){
hmIndex.put(abc.charAt(i),i);
}
}
}

Iterator itr = hmIndex.keySet().iterator();

while (itr.hasNext()){
abc.setCharAt(hmIndex.get(itr.next()),'$');
}

System.out.println("Output String :"+abc);
}
}

Comments

Popular posts from this blog

Rest Assured

Sort (Bubble) - Java

Rotate the String from position - Java