命名java对象

时间:2017-12-23 03:14:21

标签: java object naming

现在,我正在制作一个简单的java银行业务程序。它允许您添加客户和存入/提取资金。现在,我有3个班级:Main,Bank和Customer。现在我拥有它,以便当您添加客户时,它会要求您输入名称。但是现在我在命名它们时遇到了麻烦。我想要 客户将用户名作为对象名称。例如,如果我输入Bob1789作为用户名,程序将执行:

Customer Bob1789  = new Customer("Bob1789");

如果我输入randomcustomer123,程序会这样做:

Customer randomcustomer123 = new Customer("randomcustomer123");

所以基本上,无论我在扫描仪的盒子里输入什么,都要传递给客户名称。

Customer (whatever was typed in the scanner) = new Customer((whatever was typed in the scanner));

我试过这样做,但java总是假设scanner.NextLine()是对象名。

有没有办法做到这一点?

2 个答案:

答案 0 :(得分:3)

您可以使用HashMap<String, Customer>。这允许您存储名称 - 客户对。

HashMap<String, Customer> allCustomers = new HashMap<>();

要创建新客户并将其放入地图,

String customerName = scanner.nextLine();
allCustomers.put(customerName, new Customer(customerName));

要获得具有特定名称的客户,请使用以下命令:

allCustomers.get("some name");

答案 1 :(得分:2)

不知道为什么要使用obj名称。可能你需要使用HashMap<String, Customer>,其中name是键,值是对象。

Map<String, Customer> map = new HashMap<>();

添加map.put("yourName", obj); 获取map.pget("yourName");