判断 字符串是否在 list 中 如果没有 进行追加 拉姆达 java
时间: 2024-10-11 13:02:22 浏览: 26
拉姆达
在Java中,你可以使用流(Stream)配合拉姆达表达式(即Lambda Function)轻松地判断一个字符串是否在一个List中并进行追加操作。以下是一个简单的示例:
```java
import java.util.Arrays;
import java.util.List;
public class Main {
public static void main(String[] args) {
List<String> list = Arrays.asList("a", "b", "c");
String str = "d";
// 使用lambda表达式检查字符串是否在list中,并进行追加
list = list.stream()
.filter(item -> !item.equals(str)) // 如果不在,跳过
.concat(Arrays.asList(str).stream()) // 否则追加到列表末尾
.collect(Collectors.toList()); // 收集结果回集合
System.out.println(list); // 输出: [a, b, c, d]
}
}
```
在这个例子中,`list.stream()`将列表转换为一个流,`filter()`用于检查每个元素是否等于目标字符串`str`,如果不等,则通过`!item.equals(str)`条件过滤掉。然后使用`concat()`方法将过滤后的流和包含目标字符串的新流合并,最后用`collect()`收集回一个新的List。
阅读全文