Java 如何关联多个链表中的读取用户输入?
因此,现在我正在编写一个程序,它将接受用户输入,例如:Java 如何关联多个链表中的读取用户输入?,java,linked-list,user-input,Java,Linked List,User Input,因此,现在我正在编写一个程序,它将接受用户输入,例如: 第一个名字叫“杰夫” 姓“亨德森” 和他们的电话号码 存入他们银行账户的金额 并将其全部存储到链接列表中 如果我要添加另一个具有类似信息的人,如何将其存储在链接列表中,以便我可以分别访问这两个人的信息 现在,我正在使用它在输入新用户时建立所有存储: private final Scanner keyboard; private final LinkedList<String> firstName; private fina
- 第一个名字叫“杰夫”
- 姓“亨德森”
- 和他们的电话号码
- 存入他们银行账户的金额
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>();
}
专用最终扫描仪键盘;
私有最终LinkedList名字;
私有最终LinkedList姓氏;
私人最终链接列表电话号码;
私人最终LinkedList账户余额;
公共银行数据()
{
this.keyboard=新扫描仪(System.in);
this.firstName=新的LinkedList();
this.lastName=新建LinkedList();
this.teleNumber=新链接列表();
this.accountBalance=newlinkedlist();
}
我计划使用键盘.next()
读取用户输入,然后使用我编写的add方法将信息存储到每个链表中
其设置方式是,每个对象变量都有一个链表,如:
- 名字的链表
- 最近一次的链接列表
- 电话号码的链表
- 帐户余额的链接列表
如果我想调用与某个特定人员相关的信息,那么当我请求用户提供信息,以便我可以看到他在另一个链接列表中的所有内容时,我如何获得这些信息?这里的任务是创建您自己的数据结构。我想多研究一下LinkedList。几乎每一个在线链表示例都可以帮助您 提示:为您的节点创建一个类,并存储与该节点中每个人相关的所有信息 编辑:只需完成答案: 编辑2:根据您编辑的OP,我认为您希望有4个LinkedList,并查找一个人的所有信息。我假设您将按此人的姓名进行搜索(如果不是,则过程仍然相同)。此外,假设一个人的信息存储在正确的对应节点上。因此,
person1
在所有4个列表的第一个节点中包含所有信息,person2
在“索引”1中包含所有节点
因此,您开始搜索存储名称的LinkedList,并在找到名称后立即停止搜索(如果未找到,则抛出错误)。还要跟踪所看到的节点数。这将是获取所有其他列表信息所需的索引
现在,使用
for
循环,在其余3个列表中的每个列表上遍历适当的次数,并返回遇到的值。将所有数据分组到一个类中,然后使用哈希表作为数据结构会更容易,您应该可以在线找到许多关于哈希表的签出的资源。关于获取输入。由于变量的数量是固定的,因此可以将其存储在数组中,然后使用Arrays.toList()将其转换为列表,或者在循环中使用开关初始化变量。请注意,hashtable结构还有其他替代方法,但我建议使用,因为您希望稍后检索数据,并且数据可能会变大。这是一个典型的示例
您应该使用对象来保存数据。它将更加灵活和易于使用。感谢您的输入,但是这在我为这个特定项目编写代码的范围内。我很抱歉在发布我自己的材料时对其产生误解,但我很快就明白了我需要做什么。我编辑OP的目的是寻求帮助,将信息从一个链表关联到另一个链表。好的!因此,基本上我可以只搜索一个与用户相关的质量,索引应该在每个节点内排列!这很有意义,所以假设我按照字母顺序对名称进行排序,我只会一次对一个列表中的一个节点进行排序,并在排序时进行切换。我认为这是另一个问题……如果你对任何一个列表进行排序,你将失去所有数据之间的关系。这就是为什么创建自定义节点是更好的选择。从长远来看,这将是较少的工作。谢谢你的建议。但是,我已经知道如何非常得体地使用数组列表。我正在尝试用不同的存储方法学习一些新技巧。所以我对使用哈希表或数组不感兴趣。