我只是想说我是Java的新手,我一直在练习并使LITTLE变得更好。我正在尝试建立一个非常简单的银行系统,在其中您可以选择创建帐户,存款和取款。不过,目前我有点受阻,希望有人能帮助我。
我试图从用户那里获取输入,然后使用参数中的用户输入创建一个新的对象实例,这给了我错误。这是给我错误的代码行,谢谢!
它在提示我:userName String变量的bankAccount对象创建行上出现错误。
case 1:
System.out.println("Please Enter Your Name: ");
String userName = input.nextLine();
System.out.println("Please Enter a 4 digit pin number: ");
int pinNumber = input.nextInt();
int accountNumber = rand.nextInt(5100 - 1100) + 1000;
System.out.println("Account Created with the following credentials:\n " +
"Name: " + userName + "\n" +
"Account Number: " + accountNumber + "\n" +
"Pin Number: " + pinNumber);
bankAccount userName = new bankAccount(userName, accountNumber);
break;
答案 0 :(得分:1)
使用Java,即使数据类型不同,也不能使用相同的名称创建局部变量。
userName
已经用作String变量,因此您不能创建名为bankAccount
的新userName
。您可以将其命名为userAccount
。
示例:
bankAccount userAccount = new bankAccount(userName, accountNumber);
然后您可以将其添加到数组或Map中,以便以后引用该特定userAccount。
bankAccount[] accounts = new bankAccount[];
//several lines of code
bankAccount[0] = userAccount;
或
Map<String, bankAccount> bankAccount accounts = new HashMap<String, bankAcount>();
//several lines of code
bankAccount.put(userAccount.userName, userAccount);
要检索某个用户的userAccount,可以稍后在程序中进行。
bankAccount userAccount = bankAccount.get("bob");
这是获取具有"bob"
作为用户名的bankAccount。
我想您是作为一个独立的项目来做的。如果有时间,最好从codecademy学习一些Java,以更好地了解基础知识。
答案 1 :(得分:0)
您已经在第2行和第10行中两次创建了变量userName。在Java中,即使它们具有两种类型,也无法创建相同的变量名。