2012-01-04 74 views
0
someClass myobject=new someClass("test"); 
     List <someClass> mylist; 

    mylist.add(myobject); 

好吧,我得到的第一个错误是mylist被初始化,所以我做了List myList = NULL; 然后它有一个警告说mylist.add(myobject)访问NULL指针。此时变量mylist只能是NUll。初始化列表错误

   List <someClass> mylist=NULL; 

所以,当我运行程序时,系统崩溃了。但是如果不设置为NULL,编译器也会报错,说它没有被初始化。

+2

NULL甚至不是Java中的有效关键字。在使用android进行编程之前,至少要学习该语言的基础知识:http://docs.oracle.com/javase/tutorial/java/index.html – 2012-01-04 22:33:51

回答

6

您需要将它初始化为对新列表的引用。例如:

List<someClass> mylist = new ArrayList<someClass>(); 

注意,这类问题的建议你很新到Java。我会强烈建议您通过普通桌面Java控制台应用程序等开始学习Java作为语言。这可以让你学习,而不用担心移动开发,模拟器,尝试处理用户界面等等的额外困难。当然,所有这些都需要及时学习,但是在更简单的环境中学习基础知识是很有帮助。

1
List <someClass> mylist = new ArrayList<someClass>(); 

    mylist.add(myobject); 
1

首先,它null,不NULL。您在C/C++中使用NULL

那么,与null,它已初始化 - 但null! null不是一个对象,所以你不能访问它 - 这是一个NullPointerException。您需要创建一个实际的对象,如下所示:

someClass myobject=new someClass("test"); 
List <someClass> mylist = new ArrayList<someClass>(); 

mylist.add(myobject);