java字符串数组删去空字符串
时间: 2024-06-10 14:03:32 浏览: 183
在Java中,如果你有一个字符串数组并想要删除其中的所有空字符串(即长度为0的字符串),你可以使用循环和`String`类的`isEmpty()`方法来完成这个任务。以下是一个简单的示例:
```java
public static String[] removeEmptyEntries(String[] array) {
List<String> filteredList = new ArrayList<>();
for (String str : array) {
if (!str.isEmpty()) {
filteredList.add(str);
}
}
return filteredList.toArray(new String[filteredList.size()]);
}
```
在这个方法中,我们遍历数组中的每个元素,如果元素不为空,就将其添加到一个新的`ArrayList`中。最后,我们从`ArrayList`转换回原始数组类型(`String[]`)并返回。
如果你想在原地操作数组,而不是创建新的数组,Java并没有提供直接的方法,但可以先复制数组,然后对新数组进行处理。以下是原地操作的例子,虽然不推荐,因为可能会改变输入数组的长度:
```java
public static void removeEmptyEntriesInPlace(String[] array) {
int i = 0;
for (int j = 0; j < array.length; j++) {
if (!array[j].isEmpty()) {
array[i++] = array[j]; // 将非空字符串移动到前面
}
}
// 如果还有多余的空位置,截断数组
array = Arrays.copyOfRange(array, 0, i);
}
```
阅读全文