public double iteration(int n)throws MyException
{
double pisum=0;
if(n<0)
{
throw(new MyException());
}
for(int i=0;i<=n;i++)
{
if(i%2==0)
{
pisum+=(1.0/(2*i+1));
}
else
{
pisum-=(1.0/(2*i+1));
}
}
return pisum;
      }
当传入的n为小于零时,我要抛出异常,请教如何写try-catch以及异常类如何写?

解决方案 »

  1.   

    把你预计会出现问题的代码放在try块中,然后在catch中捕获处理。但是你的这个iteration方法已经抛出异常了,也就是说你不打算在这个方法体内处理异常了。
      

  2.   


    public double iteration(int n)throws MyException 

    double pisum=0; 
    if(n <0) 

    throw(new MyException("n<0")); 

    for(int i=0;i <=n;i++) 

    if(i%2==0) 

    pisum+=(1.0/(2*i+1)); 

    else 

    pisum-=(1.0/(2*i+1)); 


    return pisum; 
          } 
    你既然已经抛了就没必要try catch  
      

  3.   

    写错了 这样  throw new MyException("n<0");