2016-03-30 9 views
0

特定の変数がHashMapで使用された回数にアクセスする方法があるかどうかは疑問でした。私は女性に3つのキーを設定しています。このコードでは変数がHashMapで使用された回数にアクセスしますか?

public class HashMapTest { 

public enum Sex { 
    MALE, FEMALE; 
} 

private static HashMap<Integer, Sex> map = new HashMap(); 

public static void main(String[] args) { 

    map.put(1, Sex.FEMALE); 
    map.put(2, Sex.FEMALE); 
    map.put(3, Sex.FEMALE); 

    System.out.println("Female added. There are currently #NUMBER HERE females."); 

} 
} 

は、次のコードを考えてみましょう。そこに女性の量をアウトプリントする方法は設定されていますか?

または、2つの別個のArrayListsを使用する方が良いですか?事前に

感謝:)

答えて

6

Collections.frequency(map.values(), Sex.FEMALE)は仕事を行います。

+0

おかげで、この考えていなかったが必要です。 – andrewDev15

2

代替ソリューションは

map.values().stream().filter(Sex.FEMALE::equals).count() 

です。このソリューションは、Java 8

関連する問題