if(isN=false)
{
System.out.println("您输入的数组含有非法字符,请重新输入。");

   
  int[]result=new int[strarray.length];
      int temp=Integer.parseInt(strarray[a]);
          result[a]=temp;
          break;
} 你的result变量是局部变量,return的时候自然会报错啊。而且发现你的定义还是在循环中,每次循环就会重新定义,你也不会得到预期的结果。放在循环外面定义。也就是for(int a=0;a <strarray.length;a++)的前面。