命名java对象

问题描述 投票:3回答:2

所以现在,我正在制作一个简单的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()是对象名称。

有没有办法做到这一点?

java object naming
2个回答
3
投票

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

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

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

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

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

allCustomers.get("some name");

2
投票

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

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

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

© www.soinside.com 2019 - 2024. All rights reserved.