java - 从数组中删除空元素(Java)

标签 java arrays if-statement for-loop

我试图通过将现有元素复制到新数组来从数组中删除空元素。但是,即使我在 for 循环中初始化新数组,它的初始化也会导致我的返回值为 null。

public String[] wordsWithout(String[] words, String target) {
    for(int i = 0; i < words.length; i = i +1){
        String store[] = new String[words.length];
        if (words[i] == target){
            words[i] ="";
        }
        else if(words[i] != target){
            words[i] = store[i];
        }       
    }
    return words;
}

最佳答案

我实际上不确定你想要实现什么,但如果你想从数组中删除一个空字符串,你可以使用 java 8 中的流和过滤器来实现,如下所示:

String[] objects = Arrays.stream(new String[]{"This","", "will", "", "", "work"}).filter(x -> !x.isEmpty()).toArray(String[]::new);

关于java - 从数组中删除空元素(Java),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41935581/

相关文章:

java - Selenium : How to solve org. openqa.selenium.InvalidElementStateException: 无效元素状态

c++ - 在排序和旋转的数组中搜索

javascript - 具有对象索引的数组未按预期获得

javascript - 单击按钮时显示 2 个组件中的 1 个

java - 将进度条链接到 Install4j 中的批处理文件执行

java - 线程 "main"java.lang.NullPointerException 中出现异常,不知道我做错了什么

java - 不幸的是,(应用程序名称)已停止。 eclipse 显示 map

javascript - 过滤数组但 Item 被跳过

javascript - For 循环 if 语句在 Javascript 中识别 == 但不识别 <

Excel VBA 宏使用复选框隐藏行 - If Else 语句