日期:2014-05-20  浏览次数:20639 次

为什么答案不是4
class   SearchData
{
public   static   void   main(String[]   args)
{
int[]   a={1,2,3,4,5,6};
System.out.println(SearchData.search(a,5));
}
static   int   search(int[]   a,int   data)
{  
int   result=0;
for(int   i=0;i <a.length;i++)
{
if(data==a[i])
{
result=i;
}
else
result=-1;

    }
    return   result;
}

}

------解决方案--------------------
static int search(int[] a,int data)
{
int result=-1;
for(int i=0;i <a.length;i++)
{
if(data==a[i])
{
result=i;
break;
}
}
return result;
}

------解决方案--------------------
改成这样
if(data==a[i])
{
return i; //result=i;
}
------解决方案--------------------
同意+接分

------解决方案--------------------
up 接分
------解决方案--------------------
2楼正解.
result=i因为你没有中断循环,再循环一次后result=-1
------解决方案--------------------
2楼的方法应该是比较好的。


------解决方案--------------------
up