Java 无法访问的代码-不应';不要遥不可及

Java 无法访问的代码-不应';不要遥不可及,java,android,eclipse,loops,arraylist,Java,Android,Eclipse,Loops,Arraylist,我想用从文件读取的数据填充自定义listview。使用方法ReadPeopleDetails读取文件。这将返回一个arraylist,然后我使用一个循环,获取名称字符串并将其放入arraylist人名中 但是显然,最终的ArrayAdapter适配器行无法访问,可能是因为for循环。第二双眼睛能告诉我这是为什么吗 我认为for循环将结束(长度由arraylist的长度指定) 代码: public boolean oncreateoptions菜单(菜单菜单){ //为菜单充气;这会将项目添加到操

我想用从文件读取的数据填充自定义listview。使用方法
ReadPeopleDetails
读取文件。这将返回一个arraylist,然后我使用一个循环,获取名称字符串并将其放入arraylist人名中

但是显然,
最终的ArrayAdapter
适配器行无法访问,可能是因为for循环。第二双眼睛能告诉我这是为什么吗

我认为for循环将结束(长度由arraylist的长度指定)

代码:

public boolean oncreateoptions菜单(菜单菜单){
//为菜单充气;这会将项目添加到操作栏(如果存在)。
getMenuInflater().充气(R.menu.add\u party\u people\u list,menu);
ArrayList people_list=Readpeopledetails();
ArrayList people_name=null;///这将捕获上面一行中的名称,并将它们放入
///用于填充ListView的arraylist
int i=人员列表.size();
//int j;在迭代器系统中充当计数器
PeopleDetails[]人员数组=(PeopleDetails[])人员列表。toArray();
对于(int j=people_list.size();/*不使用终止符*/;j++){
people\u name.add(people\u数组[j].name);
}
最终ArrayAdapter=新的ArrayAdapter(此,R.layout.person\u列表项,人员名称);
返回true;
}

没有结束循环的条件。所以现在它是一个无限循环。。所以下一行是无法到达的

做点像

for(int j = 0; j< people_list.size(); j++ ){
        people_name.add(people_array[j].name);

    }
for(int j=0;j

看来你对java还是新手。要了解有关for循环的更多信息,请参阅文档

没有结束循环的条件。所以现在它是一个无限循环。。所以下一行是无法到达的

做点像

for(int j = 0; j< people_list.size(); j++ ){
        people_name.add(people_array[j].name);

    }
for(int j=0;j
看来你对java还是新手。要了解有关for循环的更多信息,请参阅文档

这是从列表的末尾开始并从那里开始递增的,所以它将永远持续下去。你可能想要

for(int j = 0; j < i ; j++ ){
for(int j=0;j
这是从列表的末尾开始,然后从那里开始递增,所以它将永远持续下去。你可能想要

for(int j = 0; j < i ; j++ ){
for(int j=0;j
除了循环未终止外,人员名称从未分配过ArrayList,因此当您尝试对其调用add方法时,将获得NullPointerException。

除了循环未终止外,人员名称从未分配过ArrayList,因此当您尝试对其调用add方法时,将获得NullPointerException。

for循环是无限的for循环,因为您没有退出条件您甚至可以显式地编写它
/*而不使用终止*/
。顺便说一句;为什么不直接迭代
人员列表
?无需将其转换为数组。使用类似
for(人员详细信息:人员列表){…}的循环
。for循环是无限的for循环,因为您没有退出条件。您甚至可以显式地编写它
/*而不使用终止*/
。顺便说一句;为什么不直接迭代
人员列表
?无需将其转换为数组。使用类似
for(人员详细信息:人员列表){…}的循环
。它不会在arraylist长度的末尾结束吗???对于java for loops来说是新的…谢谢我应该添加什么来结束循环?是的,相当新…习惯于像“1到I”一样声明它诸如此类的事情,所以弄糊涂了,我认为终止是一个额外的布尔检查系统来缩短循环…感谢帮助:)它不会结束在arraylist长度的末尾吗???对于循环来说是java的新功能…感谢我应该添加什么来结束循环?是的,相当新的…习惯于能够像“1到I”一样声明它诸如此类的事情,所以被搞糊涂了,我认为终止是一个额外的布尔检查系统来缩短循环…谢谢你的帮助:)是的,我只使用了
I
,因为此时它已经被设置为该值。是的,我只使用了
I
,因为此时它已经被设置为该值。