我想删除所有空元素..我使用下面的代码,但没有工作..
sejarahToken.removeAll(Collections.singleton(""));
sejarahToken.removeAll(Arrays.asList(""));
for (String st : sejarahToken) {
writingFile(st);
}
与使用此代码相同:
sejarahToken.removeAll(Collections.singleton(null));
sejarahToken.removeAll(Arrays.asList(null,""));
这里输出了txt文件中的 sejarahToken arraylist ..还有空值:
Leonardo
da
Vinci
dari
Italia
dan
Otto
Lilienthal
dari
Jerman
telah
mendahuluinya
Tetapi
ternyata
jauh
sebelumnya
semua
sudah
didahului
oleh
seorang
答案 0 :(得分:2)
如果有空字符串或带有空格的字符串,则可以使用以下代码段删除。
final Iterator<String> iterator = sejarahToken.iterator();
while (iterator.hasNext()) {
final String e = iterator.next();
if (e == null || e.trim().isEmpty())
iterator.remove();
}
答案 1 :(得分:1)
使用此
al.removeAll(Arrays.asList(null,""));
这将删除列表中所有null或等于“”的元素。
答案 2 :(得分:0)
使用以下代码行:
sejarahToken.removeAll(Collections.singleton(null));
如果在Arrays.asList上使用它,它将抛出UnsupportedException,因为它为您提供了Immutable副本,因此无法修改它。见下面的代码。它创建了Mutable副本,不会抛出任何异常。
public static String[] clean(final String[] v) {
List<String> sejarahToken = new ArrayList<String>(Arrays.asList(v));
list.removeAll(Collections.singleton(null));
return sejarahToken.toArray(new String[sejarahToken.size()]);
}