int getArray(){
for(int i=0;i<intArray.length;i++){
return intArray[i];
}
}
这里为什么不能返回int?谢谢

解决方案 »

  1.   

    不经过循环怎么输出数组?难道用foreach?我试过了,也是不能返回,我现在就是不明白为什么我返回的是一个int但是却出错,二楼,数组定义的就是intArray,是int类型的
      

  2.   

    数组就是正常的定义的啊,数组定义肯定是没有问题的,就是不知道为什么不能返回INT,你试下
      

  3.   


    int getArray(){
    for(int i=0;i<intArray.length;i++){
    return intArray[i];
    }
    }
    这样能编译通过???
      

  4.   

    把数组定义为类里的field即可。
    不过直接return了,还循环干什么。
      

  5.   

    int getArray(){ //你这里方法的返回值是int
      for(int i=0;i<intArray.length;i++){
        //你这里返回的是intArray数组的一个元素,根据你的定义这个数组是int[] intArray,
        //所以你return intArray[i]是正确的
        return intArray[i];
      }
    }
    //或者
    int getArray(){   return yourValue;//yourValue要是int类型
    }
      

  6.   


    不是那意思,我意思类似这样 public String method(int a){
    if(a > 0){
    return "A";
    }else if(a <= 0){
    return "B";
    }
    }
      

  7.   

    问题很简单,但LZ把大家问晕了,明明编译不过,什么不能返回int型啊!
    for循环是有条件进入,也可能是一次都不执行,也就是说不是必然有返回值,在后面再加一句返回试试:
    int getArray(){
    for(int i=0;i<intArray.length;i++){
    return intArray[i];
    }
    return 0;
    }
      

  8.   

    明白下面概念也许可以帮助你找出问题的根源:
    1.程序是顺序执行的,return,break,continue会改变程序的执行顺序。
    2.在method中return会返回到调用method的地方继续执行程序
    3.如果在一个有返回值的method中return放在了for语句中编译器将无法找到return关键字,无法编译。