我不确定为什么您的代码会首先开始编译。
您不应该在数组列表中使用[]访问成员。arraylist只是内部存储在数组中的列表。您必须使用列表get操作(仍为O(1))。编写numlist
[index]意味着numlist中有一个对象数组。您不能像C ++中那样覆盖[]操作。
另外,在Java中,int是32位。长度大于2 ^ 32的数组(因此您将需要长索引)是不太可能的,而且我甚至不确定规范是否允许它。

我不确定为什么您的代码会首先开始编译。
您不应该在数组列表中使用[]访问成员。arraylist只是内部存储在数组中的列表。您必须使用列表get操作(仍为O(1))。编写numlist
[index]意味着numlist中有一个对象数组。您不能像C ++中那样覆盖[]操作。
另外,在Java中,int是32位。长度大于2 ^ 32的数组(因此您将需要长索引)是不太可能的,而且我甚至不确定规范是否允许它。