3 ms·
If your mental model is that an array is zero-indexed but circular, I think arr[-1] still is consistent with that model. If you don’t think of arrays as circula
by Spartan-S63 6y ago
If your mental model is that an array is zero-indexed but circular, I think arr[-1] still is consistent with that model. If you don’t think of arrays as circular, then sure, it doesn’t make sense.
I’m still in agreement that negative indices make it more confusing than just calculating based off the length, but I get why they exist.
- jniedrauer 6y agoYou can also think of negative indexes as a shorthand for length-N. arr[-1] is the same as arr[len(arr)-1].
- ironmagma 6y agoThe mental model doesn’t really jive with circularity since arr[arr.length] is not the same as arr[0] in any language that I know of. With a circle, you would expect that arr[0], arr[length], and arr[2*length] are all identical.