首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

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

2012-03-30 
ListInteger 数组想创建一个 ListInteger 数组一开始这样做Java codeclass Vertex {ListInteger adj

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……

热点排行