1

所以现在我正在编写一个程序,它将接受用户输入,例如:

  • “杰夫”的名字
  • “亨德森”作为姓氏
  • 与他们的电话号码
  • 要存储在他们的银行帐户中的金额

并将其全部存储到链接列表中。

如果我要添加具有此类似信息的另一个人,那么它将如何存储在链接列表中,以便我可以分别访问两个人的信息?

现在我在输入新用户时使用它来建立所有存储:

private final Scanner keyboard;

private final LinkedList<String> firstName;
private final LinkedList<String> lastName;
private final LinkedList<String> teleNumber;
private final LinkedList<String> accountBalance;

public bankdata() 
{
    this.keyboard = new Scanner(System.in);
    this.firstName = new LinkedList<String>();
    this.lastName = new LinkedList<String>();
    this.teleNumber = new LinkedList<String>();
    this.accountBalance = new LinkedList<String>();
}

我打算用来keyboard.next();读取用户输入,然后使用我编写的添加方法将信息存储到每个链表中。

它的设置方式是每个对象变量都有一个链接列表,例如:

  • 名字的链接列表
  • 最后一个链接列表
  • 电话号码的链接列表
  • 帐户余额的链接列表

如果我想调用与某个特定人相关联的信息,那么当我请求用户信息时,如果他们在另一个链接列表中,我可以看到他的所有东西,我该如何获得它?

4

3 回答 3

2

这里的事情是创建自己的数据结构。我会说更多关于 LinkedList 的研究。几乎每个在线链表示例都可以帮助您。

提示:为您的节点创建一个类,并将与每个人有关的所有信息存储在该节点中。

编辑:只是为了完成答案:如何在 Java 中创建链接列表数据结构?

编辑 2:根据您编辑的 OP,我认为您想要 4 个 LinkedList,并找到一个人的所有信息。我假设您将按此人的姓名进行搜索(如果没有,过程仍然相同)。此外,假设一个人的信息存储在正确的对应节点上。因此,person1所有 4 个列表的第一个节点中都有所有信息,person2所有节点都位于“索引”1。

因此,您开始搜索存储名称的 LinkedList,并在找到名称后立即停止(如果未找到则抛​​出错误)。还要跟踪您看到的节点数。这将是您获取所有其他列表信息所需的索引。

现在,使用for循环,在其余 3 个列表中的每一个上遍历适当的次数,并返回遇到的值。

于 2013-03-27T21:26:17.650 回答
0

将所有数据分组到一个类中然后使用 Hashtable 作为您的数据结构会更容易,您应该在网上找到许多关于 Hashtable 的资源,还请查看http://javarevisited.blogspot.com/2012/01/java-hashtable -example-tutorial-code.html。关于获取输入..您可以将其存储在数组中,因为变量的数量是固定的,然后使用 Arrays.toList() 将其转换为列表,并可能在循环内使用开关来初始化变量。请注意,哈希表结构还有其他选择,但我建议您稍后再检索数据,并且它可能会变大。

于 2013-03-27T21:36:28.527 回答
0

这是典型的原始痴迷

您应该使用对象来保存数据。它将更加灵活和易于使用。

于 2013-03-27T22:08:19.453 回答