You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Java代码计算长方体体积始终返回0.0,请求错误排查

问题排查:计算长方体体积代码输出始终为0.0

核心错误原因

你代码里main方法中声明的volume变量始终是初始值0.0,因为调用vol.VolumeCalc(length, width, height)时,没有将方法返回的计算结果赋值给这个变量。VolumeCalc方法内部的volume是局部变量,和main里的volume完全独立,不会自动同步。

修复代码

只需要修改调用方法的那一行,把返回值赋值给main里的volume变量:

package Pyramid;
import java.util.Scanner;

public class SquareVolume {
    public static void main(String[] args) {
        double length = 0;
        double width = 0;
        double height = 0;
        double volume = 0;
        
        Scanner input = new Scanner (System.in);
        SquareVolume vol = new SquareVolume();
        
        System.out.println("ENTER LENGTH: ");
        length = input.nextDouble();
        System.out.println("ENTER WIDTH: ");
        width = input.nextDouble();
        System.out.println("ENTER HEIGHT: ");
        height = input.nextDouble();
        
        // 修复:接收方法返回的计算结果
        volume = vol.VolumeCalc(length, width, height);
        System.out.println("VOLUME: " + volume);
        
    }
    public double VolumeCalc (double length, double width, double height){
        double volume = (length * (width * height));
        return volume;
    }
}

额外优化建议

  1. 遵循Java命名规范:方法名应该使用小驼峰命名,把VolumeCalc改成volumeCalc
  2. 修正类名语义:你实际计算的是长方体体积,类名SquareVolume(正方体体积)不符合功能,建议改为CuboidVolume
  3. 简化代码结构:体积计算不需要依赖类实例,可以把volumeCalc改成static方法,这样不用创建SquareVolume实例,直接调用即可,优化后的代码如下:
package Pyramid;
import java.util.Scanner;

public class CuboidVolume {
    public static void main(String[] args) {
        double length = 0;
        double width = 0;
        double height = 0;
        double volume = 0;
        
        Scanner input = new Scanner (System.in);
        
        System.out.println("ENTER LENGTH: ");
        length = input.nextDouble();
        System.out.println("ENTER WIDTH: ");
        width = input.nextDouble();
        System.out.println("ENTER HEIGHT: ");
        height = input.nextDouble();
        
        volume = CuboidVolume.volumeCalc(length, width, height);
        System.out.println("VOLUME: " + volume);
        
    }
    public static double volumeCalc(double length, double width, double height){
        return length * width * height;
    }
}

内容的提问来源于stack exchange,提问作者Michael.T

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.20 21:50:16