【发布时间】:2013-06-06 21:07:16
【问题描述】:
私有 createAccountID() 方法应该在每次创建帐户时创建一个新的唯一 ID,即创建的第一个帐户将具有该 ID
“A1000”。每个新账户的账户ID都会增加1,即第二个
将有 ID “A1001”等,并且不应该有任何重复。
我不太确定如何启动此方法,除了我创建了一个名为 counter 的静态变量并将其设置为 0。我认为我必须使用 .equals() 方法或其他方法来确保第一个不是t 等于新的,否则它将打印一个错误消息,如 ("Duplicate")
我也不确定是否选择public void createAccountID() 或
public String createAccountID()
代码如下:
public class Account
{
private Customer customer;
private String accountID;
private double balance;
private static int counter = 0;
private static final double OPENING_BALANCE = 0.0;
public Account()
{
setCustomer(new Customer());
setBalance(OPENING_BALANCE);
createAccountID();
}
public Account(Customer theCustomer, double theBalance)
{
setCustomer(theCustomer);
setBalance(theBalance);
createAccountID();
}
private void createAccountID()<------------------------------------------------
{
accountID = "A";
for(counter = 0; counter >= 0; ++counter){
accountID+=counter;//stuck in loop doesnt work.
//just thought id try it
}
}
public void setCustomer(Customer theCustomer)
{
if(theCustomer == null){
customer = new Customer();
}
else{
customer = theCustomer;
}
}
public Customer getCustomer()
{
return customer;
}
public void setBalance(double theBalance)
{
if(theBalance <= OPENING_BALANCE){
System.out.println("Error. No Negative values");
}
else{
balance = theBalance;
}
}
public double getBalance()
{
return balance;
}
}
任何帮助表示感谢干杯
【问题讨论】:
-
这是在执行过程中唯一的还是它们被保存了,所以下次运行时它会从下一个 ID 开始
-
我相信它应该是独一无二的,但从措辞上很难理解它的真正含义。因为它确实说“A1000”只是一个例子