当前位置: 代码迷 >> J2SE >> List<Integer> 数组,该怎么解决
  详细解决方案

List<Integer> 数组,该怎么解决

热度:517   发布时间:2016-04-24 01:53:23.0
List<Integer> 数组
想创建一个 List<Integer> 数组
一开始这样做
Java code
class Vertex {    List<Integer> adj = new ArrayList<Integer>();}Vertex[] v = new Vertex[n]

然后在使用
v[i].adj.add(k) 的时候出错 其中 k 是 int 
这是怎么回事?

还有想用另一种做创建如下也出错 是为什么?

Java code
List<Integer>[] adj = new List<Integer>[n];for (List<Integer> lst: adj)    lst = new ArrayList<Integer>()


------解决方案--------------------
为什么上面都说是:int是基础类型,不是Integer对象导致的?
难道楼主用的是JDK1.5以下的版本
我觉得应该是空指针异常吧,
Vertex[] v = new Vertex[n]这样试试创建了一个数组,并没有初始化数组里的任何一个元素啊、
Java code
package test;import java.util.ArrayList;import java.util.List;public class Vertex {    List<Integer> adj = new ArrayList<Integer>();    public static void main(String[] args) {        int n = 10, i = 0;        Vertex[] v = new Vertex[n];        v[i] = new Vertex();        v[i].adj.add(10);    }}
------解决方案--------------------
探讨

谢谢 你是对的!

那第二种做法为什么有错?或者还有什么好办法创建这种结构?

引用:

为什么上面都说是:int是基础类型,不是Integer对象导致的?
难道楼主用的是JDK1.5以下的版本?
我觉得应该是空指针异常吧,
Vertex[] v = new Vertex[n]这样试试创建了一个数组,并没有初始化数组里的任何一个元素啊、
Java……
  相关解决方案