Java中的Math.pow错误

时间:2010-09-27 03:48:44

标签: java

我'显然'只是在学习编程,我似乎无法弄清楚要做什么才能摆脱这个错误。错误发生在第二行到最后一行 - 前一行:[System.out.print(+ windChill);]

这里(下面写的)是Java生成的“可能的提示”列表,用于解决我得到的错误:

**')' expected
method pow in class java.lang.Math cannot be applied to given types
  required: double,double
  found: double
method pow in class java.lang.Math cannot be applied to given types
  required: double,double
  found: double
operator + cannot be applied to double,pow
incompatible types
  required: doub...**

任何提示或澄清都将非常受欢迎。请参阅下面的代码。提前谢谢。

沙恩

import java.util.Scanner;
public class Main {

   public static void main(String[] args) {
        // TODO code application logic here
        Scanner input = new Scanner(System.in);
        System.out.print("Enter a temperature between -58 and 41 degrees Fahrenheit and press ENTER");
        double temperature = input.nextDouble();
        System.out.print("Enter a wind speed that is 2 miles per hour or faster and press ENTER");      
        double windSpeed = input.nextDouble();
        double windChill = (((35.41 + temperature - Math.pow(windSpeed * 16) + Math.pow(temperature * 16)));
        System.out.print(+windChill);

    }

}

5 个答案:

答案 0 :(得分:7)

(((35.41 + temperature - Math.pow(windSpeed * 16) + Math.pow(temperature * 16)))

Math.pow需要两个参数。你只提供一个。

您的意思是Math.pow(windSpeed,16)吗?

Math.pow声明为     public static double pow(double a,double b) 它将第一个参数的值返回到第二个参数的幂。

此外,左侧还有一个额外的括号。

答案 1 :(得分:1)

错误表示您在开始行的末尾错过了)

double windChill = (((35.41 + temperature...

您还可以在(之后删除表达式开头的=之一,因为看起来并非所有这些都是真正需要的。

答案 2 :(得分:0)

Math.pow接受两个参数,在表达式x^y中它接受第一个参数x和第二个参数y,但是您只传递单个参数。你的指数在哪里?

答案 3 :(得分:0)

这里有一个额外的括号:

 double windChill = (((
                    ^

要么删除它,要么在末尾添加)

答案 4 :(得分:0)

Math.pow函数需要两个参数,即基数和幂。你只传递一个值 - windSpeed和16的乘积。我想你可能意味着:

Math.pow(windSpeed, 16)