Como remover null de uma matriz em java

Eu escrevi um método para remover valores nulos de uma matriz que eu preciso em um programa. O método, no entanto, parece não funcionar, os valores nulos não desaparecem. Este é o meu código até agora.

public void removeNull(String[] a)
{
       for(int i=0; i<a.length; i++)
    {
        if(a[i] == null)
        {
            fillArray(a, i);
        }
    }
}

public void fillArray(String[] a, int i)
{
    String[] a2 = new String[a.length-1];

    for(int j=0; j<a2.length; j++)
    {
            if(j<i)
            {
                a2[j]=a[j];
            }
        else if(j>i)
        {
            a2[j]=a[j+1];
        }
    }

    a=a2;
}

Desde já, obrigado

questionAnswers(12)

yourAnswerToTheQuestion