Hacer esa comparacion no tiene sentido, ya que estás comparando con la cadena "null", no con el valor null que significa "puntero vacio". Y si efectivamente id[i] es null, entonces no puedes llamar ningun metodo sobre el, incluido equals, ya que te saltara una NullPointerException, como es tu caso.
Total: id[i] == null