我现在想要给一个实数集求根,已经写下面一些,但是在去输入值并转换的时候出了问题,不知道有没有人知道应该怎么解决。
- Java code
public class RootFromProduct { public double folge(double[] array)throws NegativeNumberException{ double sum=0; for(int i=0; i<array.length; i++){ if(array[i]<0) throw new NegativeNumberException(); sum += array[i]; } double result = Math.sqrt(sum); return result; } public static void main(String ... args) throws NegativeNumberException{ try{ double[] array = new double[100]; for(int i=0; i<args.length; i++){ array[i] = args[i]; } } catch(Exception ex){ } }}
这儿args的值本身是String类型的,但是我要把它转换成数字类型的,应该怎么转换?
------解决方案--------------------
array[i] = Double.parseDouble(args[i]);
------解决方案--------------------
运行的时候,第一个参数为输入的实数个数,或者根据参数的个数初始化数组大小不就可以了吗。
------解决方案--------------------
- Java code
public class RootFromProduct { public static double folge(double[] array)/*throws NegativeNumberException*/{ double sum=0; for(int i=0; i<array.length; i++){ if(array[i]<0) return sum ; //throw new NegativeNumberException(); sum += array[i]; } double result = Math.sqrt(sum); System.out.println(result ) ; return result; } public static void main(String[] args) /*throws NegativeNumberException*/{ try{ double[] array = new double[100]; for(int i=0; i<args.length; i++){ array[i] = Double.parseDouble(args[i]); } folge(array) ; } catch(Exception ex){ } }}