How to get repeated strings from ArrayList in Java

1 Answer

0 votes
import java.util.ArrayList;
import java.util.HashSet;
import java.util.Set;

public class MyClass {
    public static Set getRepeatedStrings(ArrayList<String> words) {
        Set<String> nonRepeating = new HashSet<String>();
        Set<String> repeating = new HashSet<String>();
    
        for (String s : words) {
            if (!repeating.contains(s)) {
                if (nonRepeating.contains(s)) {
                    repeating.add(s);
                    nonRepeating.remove(s);
                } else {
                    nonRepeating.add(s);
                }
            }
        }
        
        return repeating;
    }
    public static void main(String args[]) {
        
        ArrayList<String> al = new ArrayList<String>(); 
   
        al.add("java"); 
        al.add("c++"); 
        al.add("c"); 
        al.add("javascript"); 
        al.add("c#");  
        al.add("c");  
        al.add("c");  
        al.add("php"); 
        al.add("php"); 
        al.add("javascript"); 

        System.out.println(getRepeatedStrings(al));
    }
}





/*
run:

[c, php, javascript]

*/

 



answered Dec 31, 2021 by avibootz

Related questions

2 answers 153 views
1 answer 120 views
1 answer 151 views
1 answer 104 views
4 answers 261 views
3 answers 260 views
...