Java 列表<;MyStructure>;错误:应用程序崩溃,不知道原因
我构建了一个名为“item”的类,就是这样:(这就是全部代码) 现在我必须创建一个Java 列表<;MyStructure>;错误:应用程序崩溃,不知道原因,java,android,list,class,Java,Android,List,Class,我构建了一个名为“item”的类,就是这样:(这就是全部代码) 现在我必须创建一个列表和添加()“项”,但由于某种原因,我的应用程序崩溃了 这就是活动: public class MainActivity extends Activity { List<item> markers; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(sav
列表
和添加()
“项”,但由于某种原因,我的应用程序崩溃了
这就是活动:
public class MainActivity extends Activity {
List<item> markers;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
item a = new item(1, "lol", "sdfs", 32.45345, 34.54353, "nir", 0, 0);
markers.add(a);
}
感谢你们的帮助 初始化标记列表
List<item> markers=new ArrayList<item>();
List markers=new ArrayList();
在使用列表之前,必须对其进行初始化
setContentView(R.layout.activity_main);
List<item> markers = new ArrayList<item>();
item a = new item(1, "lol", "sdfs", 32.45345, 34.54353, "nir", 0, 0);
markers.add(a);
setContentView(R.layout.activity\u main);
列表标记=新的ArrayList();
项目a=新项目(1,“lol”,“SDF”,32.45345,34.54353,“nir”,0,0);
标记。添加(a);
试试这个
public class MainActivity extends Activity {
ArrayList<item> markers;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
markers = new ArrayList<item>();
item a = new item(1, "lol", "sdfs", 32.45345, 34.54353, "nir", 0, 0);
markers.add(a);
}
公共类MainActivity扩展活动{
阵列列表标记;
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
markers=newarraylist();
项目a=新项目(1,“lol”,“SDF”,32.45345,34.54353,“nir”,0,0);
标记。添加(a);
}
任何对象在使用其方法之前都应该初始化,但是在列表中添加数据之前,您似乎忘记了这一步骤。在列表中添加数据之前初始化标记
List<item> markers=new ArrayList<item>();
List markers=new ArrayList();
在代码中,您没有初始化arraylist对象以删除这些错误
请参见以下步骤:
首先将内存分配给Arraylist对象,如下所示
公共类MainActivity扩展了活动{
阵列列表标记
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
markers=newarraylist();
项目a=新项目(1,“lol”,“SDF”,32.45345,34.54353,“nir”,0,0);
标记。添加(a);
}
其次,要处理错误,请使用try和catch块
公共类MainActivity扩展了活动{
阵列列表标记
@凌驾
创建时受保护的void(Bundle savedInstanceState){
尝试
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
markers=newarraylist();
项目a=新项目(1,“lol”,“SDF”,32.45345,34.54353,“nir”,0,0);
标记。添加(a);
}
捕获(例外e)
{
//写入android ddms记录器。
或
致祝酒辞
}
}
释放已初始化的资源,如arraylist等。
将finally块放在catch块之后
你收到错误信息了吗?上面写着什么?把你的标记写上首字母。
public class MainActivity extends Activity {
ArrayList<item> markers;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
markers = new ArrayList<item>();
item a = new item(1, "lol", "sdfs", 32.45345, 34.54353, "nir", 0, 0);
markers.add(a);
}
List<item> markers=new ArrayList<item>();
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
markers = new ArrayList<item>();
item a = new item(1, "lol", "sdfs", 32.45345, 34.54353, "nir", 0, 0);
markers.add(a);
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
markers = new ArrayList<item>();
item a = new item(1, "lol", "sdfs", 32.45345, 34.54353, "nir", 0, 0);
markers.add(a);
}
catch(Exception e)
{
//Write to android ddms logger.
or
make a Toast Message
}