java - 为什么removeif()在集合流上不可用

标签 java java-8 java-stream

我在 ArrayList 上看到 removeif(),但是当我执行 stream() 时,没有任何选项。是因为 removeif() 更改了集合的大小并且流需要固定大小才能工作吗?

最佳答案

要从流中删除元素,可以使用Stream::filter。示例:

.filter(e -> e.getId() == 4)

Is it because removeif() change the size of collection and stream needs a fix size to work upon ?

不,事实上流甚至可以处理无限数量的对象

关于java - 为什么removeif()在集合流上不可用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56678737/

相关文章:

java - Maven:如何保护 Java 7 项目不使用针对 Java 8 编译的 jar Artifact ?

Java 11 根据枚举值选择一种方法应用于流

Java 流 - 无法使用 forEach 修改列表的内容

java - 迭代 LinkedHashMap 显示编译错误

java - 如何从私有(private)访问变量返回数据?

spring - Java 8 JPA Repository Stream 在 Postgresql 中逐行

java - 理解 Stream.generate 静态方法签名的问题

java - ButterKnife onclick 不起作用

java - "Actions on Google"API 能否打开您的应用程序或显示除 session UI 之外的自定义 UI?

java - 如何在Java中实现函数参数的元组解包?