从Java字符串数组中删除空值 [英] Remove Null Value from String array in java
本文介绍了从Java字符串数组中删除空值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
如何从Java中String数组删除空值?
的String [] = firstArray {测试1,,测试2,TEST4,};
我需要firstArray不空(空)值,这样
的String [] = firstArray {测试1,测试2,TEST4};
解决方案
如果你想避免栅栏柱错误,避免移动和数组中删除项目,这里是一个使用列表<有点冗长的解决方案/ code>:
进口的java.util.ArrayList;
进口的java.util.List;公共类RemoveNullValue {
公共静态无效的主要(字符串ARGS []){
串[] firstArray = {测试1,,test2的,TEST4,,空}; 清单&LT;串GT;名单=新的ArrayList&LT;串GT;(); 对于(一个String:firstArray){
如果(S =空&放大器;!&放大器; s.length()大于0){
list.add(多个);
}
} firstArray = list.toArray(新的String [则为list.size()]);
}
}
新增空
来显示一个空字符串实例之间(,
)和空
。
由于这个答案是约4.5岁,我加入一个Java 8例如:
进口的java.util.ArrayList;
进口的java.util.List;
进口java.util.Arrays中;
进口java.util.stream.Collectors;公共类RemoveNullValue {
公共静态无效的主要(字符串ARGS []){
串[] firstArray = {测试1,,test2的,TEST4,,空}; firstArray = Arrays.stream(firstArray)
.filter(!秒 - &将(S =空&放大器;&放大器; s.length()&0))
.toArray(字符串[] ::新); }
}
How to remove null value from String array in java?
String[] firstArray = {"test1","","test2","test4",""};
I need the "firstArray" without null ( empty) values like this
String[] firstArray = {"test1","test2","test4"};
解决方案
If you want to avoid fencepost errors and avoid moving and deleting items in an array, here is a somewhat verbose solution that uses List
:
import java.util.ArrayList;
import java.util.List;
public class RemoveNullValue {
public static void main( String args[] ) {
String[] firstArray = {"test1", "", "test2", "test4", "", null};
List<String> list = new ArrayList<String>();
for(String s : firstArray) {
if(s != null && s.length() > 0) {
list.add(s);
}
}
firstArray = list.toArray(new String[list.size()]);
}
}
Added null
to show the difference between an empty String instance (""
) and null
.
Since this answer is around 4.5 years old, I'm adding a Java 8 example:
import java.util.ArrayList;
import java.util.List;
import java.util.Arrays;
import java.util.stream.Collectors;
public class RemoveNullValue {
public static void main( String args[] ) {
String[] firstArray = {"test1", "", "test2", "test4", "", null};
firstArray = Arrays.stream(firstArray)
.filter(s -> (s != null && s.length() > 0))
.toArray(String[]::new);
}
}
这篇关于从Java字符串数组中删除空值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文