-4

私のコードは次のようなものです:

import java.util.Scanner;

public class CalcPyramidVolume {


public static void pyramidVolume (double baseLength, double baseWidth, double pyramidHeight) {
  double volume;
  volume = baseLength * baseWidth * pyramidHeight * 1/3;
  return;
}

public static void main (String [] args) {
  System.out.println("Volume for 1.0, 1.0, 1.0 is: " + pyramidVolume(1.0, 1.0, 1.0));
  return;
}
}

そして、void型では印刷できないとのことでした。理由がわかりません...

4

3 に答える 3

3

voidメソッドは、メイン メソッドでそのString に追加できるものを返しません。メソッドがdoubleを返すようにしてから、変数volumeを返す必要があります。

public static double pyramidVolume (double baseLength, double baseWidth, double pyramidHeight) {
  double volume;
  volume = baseLength * baseWidth * pyramidHeight * 1/3;
  return volume;
}

またはそれより短い:

public static double pyramidVolume (double baseLength, double baseWidth, double pyramidHeight) {
  return baseLength * baseWidth * pyramidHeight * 1/3;
}

参照: http://en.wikibooks.org/wiki/Java_Programming/Keywords/void

于 2015-03-21T21:14:08.450 に答える
1

pyramidVolume問題は、基本的に何も返さない関数を使用していることです。これはうまくいくはずです:

import java.util.Scanner;

public class CalcPyramidVolume {


public static double pyramidVolume (double baseLength, double baseWidth, double pyramidHeight) {
  double volume;
  volume = baseLength * baseWidth * pyramidHeight * 1/3;
  return volume;
}

public static void main (String [] args) {
  System.out.println("Volume for 1.0, 1.0, 1.0 is: " + pyramidVolume(1.0, 1.0, 1.0).toString());
  return;
}
}
于 2015-03-21T21:13:57.787 に答える
0
public class CalcPyramidVolume {
    public static double pyramidVolume (double baseLength, double baseWidth, double pyramidHeight) {
        double volume;
        volume = baseLength * baseWidth * pyramidHeight * 1/3;
        return volume;
    }

    public static void main (String [] args) {
        System.out.println("Volume for 1.0, 1.0, 1.0 is: " + CalcPyramidVolume.pyramidVolume(1.0, 1.0, 1.0));
    }
}
于 2015-03-21T21:16:48.193 に答える