带有命令行参数的Math.pow

时间:2012-10-15 12:01:47

标签: java math command-line

我需要用户获取给定数字的幂值(作为命令行参数)

这是我的代码,它出现了编译错误。

有人可以帮助我吗?

class SquareRoot{

      public static void main(String args []){

          double power = Math.pow(args[0]);         
          System.out.println("Your squared value is " + power);

      }
}

4 个答案:

答案 0 :(得分:5)

Math.pow接受两个args,你必须从命令行中获取两个数字或者有一个“硬编码”。

这是签名:

public static double pow(double a, double b)

答案 1 :(得分:3)

args[0]是您需要将其转换为双倍的String。您可以使用Double.parseDouble()

检查Math.pow

的语法
double power = Math.pow(Double.parseDouble(args[0]), Double.parseDouble(args[1]));

您需要传递两个参数baseexponent。或者对于方形,您将第二个参数的值设为2

double power = Math.pow(Double.parseDouble(args[0]), 2);

此类的名称为SqaureRoot而不是square,因此第二个参数需要

 double power = Math.pow(Double.parseDouble(args[0]), 0.5);

或者只使用Math.sqrt

double squareroot = Math.sqrt(Double.parseDouble(args[0]));

答案 2 :(得分:3)

这是因为Math.pow需要两个参数。类似的东西:

double power = Math.pow(Double.parseDouble(args[0]),2.0);

请参阅the javadoc

答案 3 :(得分:2)

Math#pow(double a, double b)其中ab

double power = Math.pow(Double.parseDouble(args[0]),2);