是否可以创建嵌套的LinkedObject[Java]
是否可以创建嵌套的LinkedObject[Java],java,object,linked-list,singly-linked-list,doubly-linked-list,Java,Object,Linked List,Singly Linked List,Doubly Linked List,LinkedObjects不是什么东西,但我之所以这样称呼它,是因为我想让它模仿LinkedList的行为 我特别想弄清楚的是,是否可以从字符串数组中创建一个对象,它是一个字符串,以及对前面对象的引用。这将被用来形成一个监管链,每个处理证据的人只知道他们将证据传递给了谁 假设我有5个人互相传递证据: “弗雷德”、“杰克”、“简”、“贝丝”、“佐格” 从这个字符串数组中,我想创建如下内容: 姓名:弗雷德 对象:杰克 姓名:杰克 对象:简 姓名:简 对象Beth 姓名:贝丝 对象:佐格 姓名:佐格
LinkedObject
s不是什么东西,但我之所以这样称呼它,是因为我想让它模仿LinkedList的行为
我特别想弄清楚的是,是否可以从字符串数组中创建一个对象
,它是一个字符串
,以及对前面对象的引用。这将被用来形成一个监管链,每个处理证据的人只知道他们将证据传递给了谁
假设我有5个人互相传递证据:
“弗雷德”、“杰克”、“简”、“贝丝”、“佐格”
从这个字符串数组中,我想创建如下内容:
姓名:弗雷德
对象:杰克
姓名:杰克
对象:简
姓名:简
对象Beth
姓名:贝丝
对象:佐格
姓名:佐格
对象:空
我问这个问题是因为我已经做了很多尝试来解决这个问题,但都无济于事。我没有代码提供,因为我的尝试失败了。我已经尽力找到这个问题的答案。简单
class LinkedObject {
final String name;
LinkedObject next;
LinkedObject(String name) {
this.name = name;
}
}
LinkedObject createLinkedList(List<String> names) {
LinkedObject head = null;
ListIterator<String> it = names.listIterator(names.size() - 1);
while(it.hasPrevious()) {
if(head == null) head = new LinkedObject(it.previous());
else {
LinkedObject o = new LinkedObject(it.previous());
o.next = head;
head = o;
}
}
return head;
}
类LinkedObject{
最后的字符串名;
LinkedObject下一步;
LinkedObject(字符串名称){
this.name=名称;
}
}
LinkedObject createLinkedList(列表名称){
LinkedObject head=null;
ListIterator it=names.ListIterator(names.size()-1);
while(it.hasPrevious()){
如果(head==null)head=newlinkedobject(it.previous());
否则{
LinkedObject o=新的LinkedObject(it.previous());
o、 下一个=头部;
水头=o;
}
}
回流头;
}
我们正在创建一个类,LinkedObject
,它包含一个字符串字段,存储数据,以及对下一个LinkedObject
的引用。第一个LinkedObject
称为链接列表的“头”,描述整个列表。这是一个很好的例子
从您的示例中,如果列表中有“beth”对象,则可以从beth.next的值中找到“zog”对象,依此类推。Simple
class LinkedObject {
final String name;
LinkedObject next;
LinkedObject(String name) {
this.name = name;
}
}
LinkedObject createLinkedList(List<String> names) {
LinkedObject head = null;
ListIterator<String> it = names.listIterator(names.size() - 1);
while(it.hasPrevious()) {
if(head == null) head = new LinkedObject(it.previous());
else {
LinkedObject o = new LinkedObject(it.previous());
o.next = head;
head = o;
}
}
return head;
}
类LinkedObject{
最后的字符串名;
LinkedObject下一步;
LinkedObject(字符串名称){
this.name=名称;
}
}
LinkedObject createLinkedList(列表名称){
LinkedObject head=null;
ListIterator it=names.ListIterator(names.size()-1);
while(it.hasPrevious()){
如果(head==null)head=newlinkedobject(it.previous());
否则{
LinkedObject o=新的LinkedObject(it.previous());
o、 下一个=头部;
水头=o;
}
}
回流头;
}
我们正在创建一个类,LinkedObject
,它包含一个字符串字段,存储数据,以及对下一个LinkedObject
的引用。第一个LinkedObject
称为链接列表的“头”,描述整个列表。这是一个很好的例子
从您的示例中,如果列表中有'beth'对象,则可以从beth.next的值中找到'zog'对象,依此类推。不确定在数据结构级别上如何真正强制执行“每个处理证据的人都只知道他们将证据传递给了谁”中的“唯一”部分。即使你提出了某种关联结构,也只需要再引用一次就可以找到下一个家伙旁边的那个家伙,对吗?我不确定犯罪现场的例子是用例还是仅仅是描述问题的一种方式。如果是用例,我想可以为每个人扩展
LinkedObject
,以隐藏下一个引用。不确定在数据结构级别上如何真正执行“每个处理证据的人都只知道他们将证据传递给了谁”中的“唯一”部分。即使你提出了某种关联结构,也只需要再引用一次就可以找到下一个家伙旁边的那个家伙,对吗?我不确定犯罪现场的例子是用例还是仅仅是描述问题的一种方式。如果是用例,我想可以为每个人扩展LinkedObject
,以隐藏下一个引用。