用Java过滤后如何计算元素?

假设以下是字符串列表:

List<String> list = new ArrayList<>();
list.add("Tom");
list.add("John");
list.add("David");
list.add("Paul");
list.add("Gayle");
list.add("Narine");
list.add("Joseph");

现在,假设您需要过滤以特定字母开头的元素。为此,请使用filter()startsWith()

long res = list
   .stream()
   .filter((s) -> s.startsWith("J"))
   .count();

使用过滤后,我们还计算了上述元素count()

以下是使用Java过滤后对元素进行计数的示例:

示例

import java.util.ArrayList;
import java.util.List;
public class Demo {
   public static void main(final String[] args) {
      List<String> list = new ArrayList<>();
      list.add("Tom");
      list.add("John");
      list.add("David");
      list.add("Paul");
      list.add("Gayle");
      list.add("Narine");
      list.add("Joseph");
      long res = list .stream() .filter((s) -> s.startsWith("J")) .count();
      System.out.println("How many strings begin with letter J? = "+res);
   }
}

输出结果

How many strings begin with letter J? = 2