一个输入支出和收入后算余额的题
本帖最后由 咦一哈呦呦 于 2022-10-11 10:29 编辑class Account{
private String accountName;
private double income;
private double outcome;
public Account(){}
public void setAccountName(String accountName){
this.accountName = accountName;
}
public void setIncome(double income){
this.income = income;
}
public void setOutcome(double outcome){
this.outcome = outcome;
}
public double getIncome() {
return income;
}
public String getAccountName() {
return accountName;
}
public double getOutcome() {
return outcome;
}
}
public class AccountBook {
public static void main(String[] args){
Account acc = new Account();
System.out.println("账户名称:" + acc.getAccountName() + "收入额:" + acc.getIncome() + "支出额:" + acc.getOutcome() + "余额:" + 20.0);
}
public static void compute(Account temp){
temp.setAccountName("张三");
temp.setIncome(30);
temp.setOutcome(10);
System.out.println(temp.getIncome()-temp.getOutcome());
}
}
在最后的public static void compute(Account temp)里的Account temp是什么意思。在输出的时候我应该则么用他呢,就是在20.0的地方替换成compute这个函数 Account temp就是传入一个Account对象参数,你在主函数里实例化了一个Account对象,然后传入了compute方法,执行compute里的代码,计算出余额! homeskating 发表于 2022-10-11 10:35
Account temp就是传入一个Account对象参数,你在主函数里实例化了一个Account对象,然后传入了compute方法 ...
你好 我想问一下System.out.println("账户名称:" + acc.getAccountName() + "收入额:" + acc.getIncome() + "支出额:" + acc.getOutcome() + "余额:" + compute();); 我在输出的时候 compute();他在这里应该怎么打呀。 咦一哈呦呦 发表于 2022-10-11 10:40
你好 我想问一下System.out.println("账户名称:" + acc.getAccountName() + "收入额:" + acc.getIncome ...
传入Account的对象就可以了
这就是 Java 中方法的传入参数设置类型和变量名的意思,表示此 compute 方法需要一个 Account 类的参数
你想将 20.0 除换成此方法的调用,需要你设置方法返回值,你可以不应该这样定义这个方法,因为你这样就将 compute 写死了,即 30 - 20
参考修改代码:
public class AccountBook {
public static void main(String[] args){
Account acc = new Account();
acc.setAccountName("张三");
acc.setIncome(30);
acc.setOutcome(10);
System.out.println("账户名称:" + acc.getAccountName() + "收入额:" + acc.getIncome() + "支出额:" + acc.getOutcome() + "余额:" + compute(acc));
}
public static Double compute(Account temp){
return temp.getIncome() - temp.getOutcome();
}
}
本帖最后由 咦一哈呦呦 于 2022-10-11 10:49 编辑
homeskating 发表于 2022-10-11 10:42
传入Account的对象就可以了
acc 是对象吗System.out.println("账户名称:" + acc.getAccountName() + "收入额:" + acc.getIncome() + "支出额:" + acc.getOutcome() + "余额:" + compute(acc));我应该搞错了吧,他这样是错的
咦,我运行了一下他说此处不允许只用空类型 这是哪里错了 咦一哈呦呦 发表于 2022-10-11 10:47
acc 是对象吗System.out.println("账户名称:" + acc.getAccountName() + "收入额:" + acc.getIncom ...
public static double compute(Account temp){
temp.setAccountName("张三");
temp.setIncome(30);
temp.setOutcome(10);
return temp.getIncome()-temp.getOutcome();
}
改下compute方法 Twilight6 发表于 2022-10-11 10:43
这就是 Java 中方法的传入参数设置类型和变量名的意思,表示此 compute 方法需要一个 Account 类的参数 ...
懂了懂了谢谢 homeskating 发表于 2022-10-11 10:51
改下compute方法
谢谢
页:
[1]