java - 如何正确使用数组

标签 java arrays indexoutofboundsexception

我正在尝试初始化一个数组并在 Java 中向其中插入一些值,但出现越界异常。这是代码

int xPoints[] = new int[]{};
int i = 0;
for(Edge e : myVectorOfEdges){
    xPoints[i] = e.start;
    i++;

}

我必须使用这种类型的数据结构,因为我正在处理仅接受 int[] 类型的多边形。

最佳答案

您已将 xPoints 初始化为空数组,因此任何访问其(不存在的)元素之一的尝试都将导致 ArrayIndexOutOfBoundsException。相反,您应该将其初始化为与您正在迭代的 myVectorOfEdges 相同的大小:

int xPoints[] = new int[myVectorOfEdges.length];

关于java - 如何正确使用数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37104271/

相关文章:

arrays - 在二维数组中查找连续 block

java - xpath text() 比较

java - Android:ViewPager仅显示第一个 fragment ,其他页面空白

java - 随机元素作为输入并获取值

javascript - jQuery 获取整数数组的内容(长度)

php - 在php foreach循环中获取数组中的下一个键

java - 有没有办法将 ArrayIndexOutOfBoundsException 导致值替换为某个默认值?

Java 在编辑 observableList 时抛出 IndexOutOfBounds

java - Java FlowLayout 中的第 2 组组件