java中查找匹配参数时如何退出循环
假设我有一个包含5个数据的ArrayList,如下所示:java中查找匹配参数时如何退出循环,java,arraylist,Java,Arraylist,假设我有一个包含5个数据的ArrayList,如下所示: for(int i=0;i<testarrar.length;i++){ if(testarrar.get(i)=="realdata"){ //do your stuff; return data; } } testarar=[option1,option2,option3,realdata,option5] 我想迭代上面的列表,如果我得到realdata,然后收集相应的数据,但是在我的例子中,代码在realdata之后
for(int i=0;i<testarrar.length;i++){
if(testarrar.get(i)=="realdata"){
//do your stuff;
return data;
}
}
testarar=[option1,option2,option3,realdata,option5]代码>
我想迭代上面的列表,如果我得到realdata,然后收集相应的数据,但是在我的例子中,代码在realdata之后进一步执行,并返回null
编辑:
我在方法中的意图如果找到realdata,那么我想返回数据
否则我不想从这个方法返回任何值。但就我而言
如果找不到数据,则至少为null。因此,我尝试返回值if realdata
找到并退出。但我的函数将在TestArr结束时运行。只有在有数据时才调用此函数
这是我的密码:
private Object getData() {
if (testarrar.contains("realdata"))
{
if (obj != null) {
//do something and get data
return b.getValue(data);// I want to exit when matched parameter return this value
}
}
return null; // I am getting this
}
如果realdata在last中,那么它工作,但除last之外的任何位置都返回null,因为它假定realdata在last中。如何解决这个问题,如果我有任何位置realdata。您可以简单地使用“break”退出循环,如下所示:
for(int i=0;i<testarrar.length;i++){
if(testarrar.get(i)=="realdata"){
//do your stuff;
break;
}
}
语句,并检查是否仍为null。
使价值
b.getValue(数据)代码>
返回的可能为空。哪个循环?代码中没有循环。如果使用return
,循环将在找到记录时终止!好的,我没有循环,如何从这个携带各自数据的循环中退出。顺便问一下,为什么要从这个方法返回null。你的意思是:尽管数组包含数据,但始终会得到null值?@user2332049请发布完整的代码。这不起作用<代码>此方法必须返回Object类型的结果
。但是没有得到返回值。如果发生realdata,我将获得值,但我的最后一个选项5将执行,因此它将返回null。您可以检查代码中返回值的类型,如果它是一个对象,您可以继续,如果它是null,您可以忽略。如果您确实需要返回某种类型的对象,请不要返回null,而是返回您想要返回的任何类型的对象<代码>对象对象=新对象();返回obj
return null;