获取List中的特定元素的数量

Fri*_*jof 6 java size list arraylist count

我正在寻找一种快速方法来查找List一个特定元素的元素数量:

List<String> list = new ArrayList<String>();
list.add("apple");
list.add("banana");
list.add("apple");
list.add("kiwi");

// I'm looking for a method as List.amountOf(Object obj):

list.amountOf("apple");     // should return 2
list.amountOf("kiwi");      // should return 1
list.amountOf("pear");      // should return 0
Run Code Online (Sandbox Code Playgroud)

Ale*_* C. 11

你可以使用Collections.frequency:

int amountOfApple = Collections.frequency(list,"apple");
Run Code Online (Sandbox Code Playgroud)

使用Java 8,您还可以使用流来执行此操作:

long amountOfApple = list.stream().filter(s -> "apple".equals(s)).count();
Run Code Online (Sandbox Code Playgroud)