作为问题的先驱,我是Java的新手,所以请耐心等待。
我现在正在尝试创建一个帐户系统,似乎自动化帐户ID流程比以前想象的要困难。我希望能够为每个单独的对象引用定制用户ID,因此它易于访问,计算有多少用户,编辑对象中的值等。
我基本上想要:
int accountsMade = 1;
userAccount(A1)= new userAccount(其他输入);
然后在用户下次注册帐户时,对象引用将为:
userAccount(A2)= new userAccount(不同的输入);
有没有办法自动化这个系统?似乎有,但我无法弄明白。
答案 0 :(得分:0)
您要做的是创建并保持对HashMap对象的引用。这些是键值对,其中提供键(在这种情况下,用户提供的用户ID)允许您以非常快速有效的方式获取值(在本例中为用户帐户对象)。 / p>
您想要使用的HashMap的实际签名是Map。
这是关于HashMap的当前文档:http://docs.oracle.com/javase/7/docs/api/java/util/HashMap.html。
但是,我认为您现在正在构建的设计存在一个非常重要的问题,而且每次您获得输入时,您都在构建新的userAccount对象。帐户的概念表明某种连续性 - 保存数据,密码等。对吗?每次登录时,GMail都不会为您创建新帐户。
所以,不管怎么说,你需要某个地方来保存这些数据。您可以使用外部数据库(如SQL),或者,如果您100%确定您的用例和用户库永远不会更改,您可以将帐户对象硬编码到原型中并检查用户登录尝试HashMap中的键。无论哪种方式,我都不确定它是否会在您用户登录时构建userAccount对象。