java中ArrayList<Object> ["", "", "abc", "def"]如何变成["abc","def"]
时间: 2023-08-20 17:05:40 浏览: 75
在Java中,你可以使用`removeIf()`方法结合Lambda表达式来去除ArrayList中的空元素。以下是一个示例代码:
```java
import java.util.ArrayList;
import java.util.List;
public class Main {
public static void main(String[] args) {
List<Object> myList = new ArrayList<>();
myList.add("");
myList.add("");
myList.add("abc");
myList.add("def");
myList.removeIf(str -> str.toString().isEmpty());
System.out.println(myList); // 输出: [abc, def]
}
}
```
在这个示例中,我们创建了一个 `myList` 列表,并添加了一些元素。然后,我们使用 `removeIf()` 方法和一个 Lambda 表达式,通过判断对象转换为字符串后是否为空来移除空元素。运行代码后,`myList` 的值将为 `[abc, def]`。
请注意,在这个示例中,我们将ArrayList的类型声明为`ArrayList<Object>`,即包含任意类型的对象。在使用Lambda表达式判断元素是否为空时,我们先将对象转换为字符串,然后再判断字符串是否为空。
阅读全文