创建后
ArrayList<Integer> connectedTo = new ArrayList<>();
connectedTo.add(0,4);
connectedTo.add(3,4);
在上述语句中,connectedTo.add(0,4) 在第 0 个位置插入了一个值 4,这符合预期。
但是connectedTo.add(3,4)会抛出java.lang.IndexOutOfBoundsException。为什么会发生这种情况? 根据我的理解,ArrayList 应该动态调整大小并允许插入,对吗?
有什么办法可以克服这个问题吗? python创建表达式的情况
vertList = {}
vertList[0] = 1
vertList[2] = 3
允许我毫无问题地保存各种索引中的值。 如何实现代码执行相同的操作。
最佳答案
恐怕您不匹配两种不同的数据类型。 {}
是一个字典,它允许您映射值。另一方面,ArrayList
是一种 list
,您应该在 Python 中使用 []
对其进行初始化。您为列表提供的 Python 代码将无法工作。我想,您使用的 add
方法最多在列表末尾添加一个元素。
看看这个:In Python, when to use a Dictionary, List or Set?
这个问题及其答案肯定会帮助您了解最流行的集合类型之间的差异,并选择最适合您的情况的集合类型。
关于java - 向 ArrayList<Integer> 实例添加值只能按顺序完成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40486035/