Don't be "nice" to callers that try to call this and other similar methods once we have processed past the last entry.
Let it crash somehow. In this case we'd get an NPE "for free".

In general accessing data past the end of an iterator is undefined. Returning null obviously fits into this category, but if we want to be helpful, alter the caller to the error and crash instead (which is also undefined but easier to diagnostize). If we return null, that null will often be sent through one ore more layer and problem is now much harder to identify.