0

私はJavaコンピューティングコースに取り組んでいますが、ここでエラーの原因に困惑しています。調べてみましたが、この種のエラーを探すのは難しいようです。

エラー: source_file.java:12: エラー: シンボル
double が見つかりません r = scan.nextDouble; ^
記号: 変数 nextDouble
の場所: Scanner 型の変数 scan

コード:

 import java.io.*;
 import static java.lang.System.*;
 import java.util.Scanner;

 class Rextester{


  public static void main (String str[]) throws IOException {

     Scanner scan = new Scanner(System.in);
     System.out.println("Radius:");
     double r = scan.nextDouble;
     double circumference = (2 * 3.14 * r);
     double area = (r * r * 3.14);
     System.out.println("Circumference: " + circumference );
     System.out.println("Area :" + area );

    }

}
4

6 に答える 6

9

メソッドには括弧が必要です

double r = scan.nextDouble();
                          ^
于 2013-10-01T12:15:47.313 に答える
3

エラー: source_file.java:12: エラー: シンボル double が見つかりません r = scan.nextDouble;

このエラーは、変数に保持されているオブジェクトのパブリック要素にアクセスしようとしたことを意味しますscan

呼びたいのはパブリック変数ではなくメソッドnextDouble()

scan.nextDouble();そのため、メソッドを呼び出すために使用する必要があります。

于 2013-10-01T12:17:51.730 に答える
1

double r = scan.nextDouble();の代わりに行を変更します double r = scan.nextDouble

于 2013-10-01T12:17:18.067 に答える
0

ちょっとした補足ですが、

scan.nextDouble();

あなたも使うべきです

Math.PI

3.14 の代わりに


固定コード:

import java.io.*;
import static java.lang.System.*;
import java.util.Scanner;

class Rextester{


    public static void main (String str[]) throws IOException {

        Scanner scan = new Scanner(System.in);
        System.out.println("Radius:");
        double r = scan.nextDouble();
        double circumference = (2 * Math.PI * r);
        double area = (r * r * Math.PI);
        System.out.println("Circumference: " + circumference );
        System.out.println("Area :" + area );

    }
}
于 2013-10-01T12:28:50.190 に答える
0

に変更scan.nextDoublescan.nextDouble()ます。フィールドではなくメソッドです。したがって、ブラケットが必要です。

于 2013-10-01T12:16:10.607 に答える
0

nextDouble() はプロパティではなくメソッドです

だから試してください:

double r = scan.nextDouble();

コードを短くしてみてください:

  public static void main (String str[]) throws IOException {

     Scanner scan = new Scanner(System.in);
     double r = scan.nextDouble();
     System.out.println("Circumference: " + (2 * Math.PI * r));
     System.out.println("Area :" + (r * r * Math.PI));

    }
于 2013-10-01T12:19:38.750 に答える