问题补充说明:public class array3 {public static int indexOf(int table[],int key){int b=3;int a[]=new int[5];for(int i=0;i<5;i++){if(key==a[i]){system.***.println("检索到");}}return i;}public static void main(String args[]){int a[]={1,2,3,4,5}; system.***.println("key在数组的序号="+indexOf(a,3));}}
出现原因:returni脱离了for循环体,i是for循环的内部变量,脱离了就找不到了。
解决:把returni写在system.***.println("检索到");的后面去
publicclassarray3{
publicstaticintindexOf(inttable[],intkey)
{
intb=3;
inta[]=newint[5];
for(inti=0;i<5;i++)
{
if(key==a[i])
{
system.***.println("检索到");returni;
}
}
}
publicstaticvoidmain(Stringargs[])
{
inta[]={1,2,3,4,律毫论互刘被士5};
system.*五**.println("key在数组的序号="+indexOf(a,3));
}
}
扩展资料:
cannotberesolv速必置宁明edtoavariable一般出现原因:
无法解析为变量
一种情况,变量名和之前声明的不一样,应该是写错了,用快捷键拼全试试;
二种情况,数据类型初相问题,不匹配。
java:can'tberesolvedtoavariable
错误解读:它的意思说:不能转换为一个变量。
错误原因:while语句里定义的变量,是局部变量。外部不能再用。
解决办法:再while语句之外,先定义变量。