【发布时间】:2018-02-08 03:07:10
【问题描述】:
我想删除列表中仅包含空白字符的所有字符串。我尝试了以下代码,但有些行没有被删除:
List<String> getarray = /* ... */;
for (int i = 0; i < getarray.size(); i++) {
if (getarray.contains(" ").getarray.contains(null)) {
getarray.remove(i);
} else {
System.out.println("a: " + getarray.get(i));
}
}
这仅适用于某些输入,有人可以帮我理解为什么吗?
【问题讨论】:
-
您想删除其中只有空格字符的任何行吗?试试
String.trim然后String.isEmpty。 -
@krunal 看看我发布的答案,它更快更小代码;)
-
@azro 我同意,你的代码更小,看起来更漂亮,但对于刚刚学习编程或 Java 新手来说,这真的很难理解。我认为 krunal 试图理解循环和字符串是如何工作的,lambdas 和流 api 可能有点太多了。