I agree with above posters, but also logically I think it's a really bad decision if it automatically skips null elements, since the code cannot infer what that null might mean to your application in a logical sense. Because those elements ARE there, just ... well, null.
But having this structure indicates you should take better care in maintaining the data. If you need cheap element removal, and you don't care about element order, a fast technique for static targets is having a constant size array, and track the length manually. When adding an element, add it at index "length", and increase the length by one. When removing a random element, you swap it with the last element, and then decrease the length. (I use this, and is in case you are worried about performance issues due to pushing / random removal constantly)
If you'd like, more context to your problem would help us indicate better possible solutions :)