我在使用以下语法时遇到了一些问题.
我目前正在学习Java,并且一直在阅读过去的考试文章,以帮助我建立自己的Java知识.
这是一个问题:
写一个类帐户,其中包含帐号的实例变量和帐户的当前余额.实现构造函数和方法getAccountNumber(),getBalance(),debit(double amount)和credit(double amount).在您的借记和贷记实施中,检查指定的金额是否为正,并且在借方法中不会引起透支.在这些情况下返回false.否则,请更新余额.
我曾试图这样做,但我还没有为借记和贷记方法实现布尔函数.我只是想先建立程序并尝试让它运行起来.我之后会看到这个,因为我不确定如何返回真或假,同时也试图从所述方法中返回一定数量.
请原谅我的代码中的任何错误,因为我还在学习Java.
我可以运行我的代码,但是当我输入存款时,它似乎无法正常工作,我将在此感谢任何指示.
这是我的代码:
import java.util.*;
public class Account {
private int accountNumber;
private static double currentBalance;
private static double debit;
// ***** CONSTRUCTOR *****//
public Account(double currentBalance, int accountNumber) {
accountNumber = 12345;
currentBalance = 10000.00;
}
public int getAccountNumber(int accountNumber) {
this.accountNumber = accountNumber;
return accountNumber;
}
public double getcurrentBalance(double currentBalance) {
this.currentBalance = currentBalance;
return currentBalance;
}
public static double debit(double currentBalance, double amount) {
currentBalance -= amount;
return currentBalance;
}
public static double credit(double currentBalance, double amount) {
currentBalance += amount;
return currentBalance;
}
public static void main(String [] args){
String withdraw = "Withdraw";
String deposit = "Deposit";
double amount;
Scanner in = new Scanner(System.in);
System.out.println("Are you withdrawing or depositing? ");
String userInput = in.nextLine();
if(userInput == withdraw)
System.out.println("Enter amount to withdraw: ");
amount = in.nextDouble();
if(amount > currentBalance)
System.out.println("You have exceeded your amount.");
debit(currentBalance, amount);
System.out.println("Your new balance is: " + currentBalance);
if (userInput == deposit)
System.out.println("Enter amount to deposit: ");
amount = in.nextDouble();
credit(currentBalance, amount);
System.out.println("Your new balance is: " + currentBalance);
}
}
Run Code Online (Sandbox Code Playgroud)
请再次原谅我的代码中的任何错误.我还在学习它的语法.
在if语句中,if(userInput == withdraw)您尝试比较String对象.
在Java中,为了比较String对象,使用equals方法而不是比较运算符==
if(userInput.equals(withdraw))
Run Code Online (Sandbox Code Playgroud)
代码中有几个实例String使用==更改这些对象来比较对象equals.
此外,当使用条件块时,最好用大括号包围块 {}
if(true){
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3409 次 |
| 最近记录: |