-3

in java, i have an array like this:

String[] city = {"texas", "ny", "sydney", "ny", "paris", "texas", "ny"};

i want to sort/group them with count...like-

texas = 2
ny = 3
sydney = 1
paris = 1
2
  • Have you tried anything at all? (Helpful links for asking better questions: How to Ask, FAQ) Commented Mar 28, 2013 at 12:30
  • 1
    Try Map<String,Integer>. Commented Mar 28, 2013 at 12:31

1 Answer 1

10

Use Collections.frequency() method.

import java.util.Arrays;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

public class Test{
    public static void main(String[] args) {
        String[] city = {"texas", "ny", "sydney", "ny", "paris", "texas", "ny"};
        List<String> asList = Arrays.asList(city);
        Map<String, Integer> map= new HashMap<String, Integer>();
        for(String s: city){
            map.put(s,Collections.frequency(asList,s));
        }
        System.out.println(map);

    }
}
Sign up to request clarification or add additional context in comments.

1 Comment

+1 for Collections#frequency(java.util.Collection, Object)

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.