gpt4 book ai didi

java - 自定义类中的变量总是打印 0

转载 作者:行者123 更新时间:2023-11-29 09:59:28 25 4
gpt4 key购买 nike

所以我是编程新手。我创建了一个简单的 Calc 类,虽然它是构造函数,但它可以获取 2 个数字。我创建了一个 calcTotal 方法,它将这两个数字相加并将它们放入一个名为 total 的变量中。然后我创建了一个 printTotal 方法,它不过是 System.out.println(total);

但是,当我在 main 中创建一个对象并调用 printTotal 方法时,它总是打印出 0。我知道 total 在我的 Calc 类中被初始化为 0。我不明白如何将计算出的总数从 calcTotal 方法传递给 printTotal 方法。如果我将 System.out.println(total) 放在 calcTotal 方法中并调用 in main,我会得到正确的总数。

修改我的 Calc 类

public class Calc{

private int numOne;
private int numTwo;
private int total;

public Calc(int numOne, int numTwo){
this.numOne = numOne;
this.numTwo = numTwo;
}

public void calcTotal(){

total = numOne + numTwo;

}

public void printTotal(){

System.out.println(total);
}
}

和我的主要

public class HelloWorld{

public static void main(String []args){

Calc myCalc = new Calc(3,5);
myCalc.printTotal();

}
}

我知道这是一个 super 初学者的问题,它可能会被否决,但这让我很沮丧。

谢谢你的帮助

最佳答案

在调用打印方法之前,您永远不会调用执行计算的方法 calcTotal(),因此永远不会计算总和。

但无论如何,你不应该有两个这样的方法,因为这个错误可以很容易地通过 calcTotal() 返回 int 值来避免,然后调用代码可以打印它,或者用它做任何它想做的事。

public int calcTotal() {
return numOne + numTwo;
}

主要是:

Calc myCalc = new Calc(3,5);
System.out.println("total: " + myCalc.calcTotal());

关于java - 自定义类中的变量总是打印 0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41864703/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com