java - 我的 Java 列表显示为空,实例化它似乎不起作用...帮助?

标签 java list

在网站和谷歌上搜索,似乎没有任何内容可以解决我确信是一个 super 简单的问题。

所以我有一个这样声明的列表:

private List<Integer> mList;

当我尝试在其上执行类似 mList.add(...); 的方法时,它不起作用,返回空指针异常。我试着像这样实例化列表:

public Class() {
     mList = new List<Integer>();

但这也是不正确的,至少根据我的 IDE Eclipse。当我四处搜索时,我似乎无法正确地说出问题,因为就这么简单,如果不把它变成 ArrayList 或其他我不想做的事情,就没有什么能真正显示出我想做什么。感谢您提出这个简单的问题。

最佳答案

变量在使用前必须先初始化。否则它为 null,您会得到 NullPointerExceptions。

Java 有接口(interface),就像只定义了方法的类。但是,您不能从中创建真实对象。它们只是用于定义契约。

java.util.List就是这样一个接口(interface)。

您必须使用实现该接口(interface)的真实类

例如

private List<Integer> mList = new ArrayList<Integer>();

java.util.ArrayList 是 List 的一个实现,这将如您所愿。

关于java - 我的 Java 列表显示为空,实例化它似乎不起作用...帮助?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6233772/

相关文章:

java - 将字符串拆分为列表

python - 从元组列表中获取最小最大值

java - 有没有办法在我的 Java 代码中调用 2 个类?

java - 没有循环就循环?

java - 查询已存在的数据库返回空游标

list - WinBugs的“Expected collection operator c”错误

list - 如何打印返回列表的 Perl 表达式的第 n 个元素?

java - 我的问题的最佳 OOP 解决方案是什么?

Java 在 for 循环中使用 getter 还是创建局部变量?

c++ - 将迭代器中的数据插入列表的问题