如何将空值移动到数组的末尾?

时间:2017-03-17 04:53:49

标签: java arrays sorting

有没有办法对下面String Array

进行排序
[four, null, null, null, good, null, null, null, dogs, null, null, null, swam, null, null, null]

["four", "good", “dogs", “swam”, null, null, null, null, null, null, null, null, null]

不使用Array类中的任何数组方法。

这就是我所做的,但这基本上是复制相同的东西

String [] newArray = new String [letters.length()];
for(int i=0; i<n+1;i++){
        if (oldArray[i]!=null){
        newArray[i] = oldArray[i];
        }

3 个答案:

答案 0 :(得分:0)

String[] oldArray = { null, "four", null, "good", null, "dogs", null, "swam", null, null, null };
int size = oldArray.length;
String[] newArray = new String[size];
int index = 0;
for (int i = 0; i < size; i++) {
    if (oldArray[i] != null) {
        newArray[index++] = oldArray[i];
    }
}

答案 1 :(得分:0)

你去:

String newa[] = new String[old.length];
Int i = 0;
for(String s:old)
    if(s!=null){
        newa[i] = s;
        i++;
    }

答案 2 :(得分:-1)

您始终可以识别数组中的第一个null,并将其他非null元素移动到标记元素的左侧。