public static String[] clean(final String[] v) { int r, w; final int n = r = w = v.length; while (r > 0) { final String s = v[--r]; if (!s.equals("null")) { v[--w] = s; } } return Arrays.copyOfRange(v, w, n);}要么
public static String[] clean(final String[] v) { int r, w, n = r = w = v.length; while (r > 0) { final String s = v[--r]; if (!s.equals("null")) { v[--w] = s; } } final String[] c = new String[n -= w]; System.arraycopy(v, w, c, 0, n); return c;}工作良好…
public static void main(final String[] argv) { final String[] source = new String[] { "Mars", "null", "Saturn", "null", "Mars" }; assert Arrays.equals(clean(source), new String[] { "Mars", "Saturn", "Mars" });}


