您的位置首页百科知识

i cannot be resol来自ved to a variable 怎么解决

问题补充说明: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));

}

}

i cannot be resol来自ved to a variable 怎么解决

扩展资料:

cannotberesolv速必置宁明edtoavariable一般出现原因:

无法解析为变量

一种情况,变量名和之前声明的不一样,应该是写错了,用快捷键拼全试试;

二种情况,数据类型初相问题,不匹配。

java:can'tberesolvedtoavariable

错误解读:它的意思说:不能转换为一个变量。

错误原因:while语句里定义的变量,是局部变量。外部不能再用。

解决办法:再while语句之外,先定义变量。