0

我刚刚解决了一个有趣的小练习问题,基本上可以归结为:

int [] array = new int [10];
int i = 0;
try{
  while (true){

     array[i++] = 10;

  }
}
catch(ArrayIndexOutOfBoundsException e){ 
   for(i = 0; i < 10; i++){
      System.out.println(array[i]);
   }
}

这有多邪恶?走向邪恶?很多全局变量是邪恶的?或者这完全没问题?

4

2 回答 2

2

异常处理在性能方面非常昂贵(并且在内存方面有些昂贵)。作为一般规则,您应该始终尽可能选择其他技术。

于 2013-06-03T21:46:43.333 回答
0

以下是一些无需尝试捕获的可能方法:

第一的

int [] array = new int [10];  
int i = 0;  

while(i<10){  
  array[i]=(i+1);  
  System.out.println(array[i]);  
  i++;
}  

第二

int [] array = new int [10];

for(int i=0; i<array.length; i++){
  array[i]=(i+1);
  System.out.println(array[i]);
}

我的意思是,如果不是真的需要使用 try catch,那就不要!尝试 catch 只是为了防止用户错误(通常在我的程序中),或者除非程序要求您使用它。

于 2013-06-03T21:53:02.933 回答