2013-03-28 43 views
-3

在Java中,我有一个这样的数组:如何统计Java中列表对象中的重复值?

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

我想排序/它们与数组...喜欢 -

texas = 2 
ny = 3 
sydney = 1 
paris = 1 
+0

你有没有尝试过任何东西? (提问更好的问题的有用链接:[问],[FAQ]) – Doorknob

+1

尝试'Map '。 – adatapost

回答

10

使用Collections.frequency()方法。

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); 

    } 
} 
+1

+1对于'Collections#frequency(java.util.Collection,Object)' – tmwanik

相关问题