Java 链表中的链表 - 访问项目
Java LinkedLists in LinkedLists - Access items
至少对我来说,大学里有一件棘手的事情要做。
我必须在保存其他 LinkedList 的地方创建一个 LinkedList。
在这些链表中保存的是文本模式,我想用特定的命令来改变它们。但是,我不知道如何访问这些 LinkedList。如果我使用 .get,我只会收到保存的 LinkedList 作为对象。我发现无法读取保存在此对象或更早的 LinkedList 中的项目。
LinkedList listrows = new LinkedList();
LinkedList listcolumn1 = new LinkedList();
LinkedList listcolumn2 = new LinkedList();
listcolumn1.add("test");
listcolumn1.add("test");
listcolumn2.add("hello");
listcolumn2.add("hello");
listrows.add(listcolumn1);
listrows.add(listcolumn2);
//here is my problem now, I cannot save it as a LinkedList
//because linkedlist is giving back an object
LinkedList listedit= new LinkedList();
listedit=listrows.get(0) //<-error
//If I use syso, only the object name is printed
System.out.println(listrows.get(0)) //Printed e.g.: [Ljava.lang.String;@55f96302]
提前感谢您的帮助!
您应该声明您需要的确切类型:
LinkedList<LinkedList<String>> listrows = new LinkedList<>();
LinkedList<String> listcolumn1 = new LinkedList<>();
LinkedList<String> listcolumn2 = new LinkedList<>();
然后:
LinkedList<String> listedit = listrows.get(0);
您的问题是您使用了原始 LinkedList
类型,因此 listrows.get(0)
返回了 Object
类型的实例而不是内部 LinkedList
.
您必须根据通用编程概念来执行此操作,
LinkedList<String> lt1=new LinkedList<String>();
LinkedList<String> lt2=new LinkedList<String>();
LinkedList< LinkedList<String>> lt=new LinkedList< LinkedList<String>>();
lt1.add("One");
lt1.add("Two");
lt1.add("Three");
lt2.add("A");
lt2.add("B");
lt2.add("C");
lt.add(lt1);
lt.add(lt2);
System.out.println(""+lt.get(0));
至少对我来说,大学里有一件棘手的事情要做。 我必须在保存其他 LinkedList 的地方创建一个 LinkedList。
在这些链表中保存的是文本模式,我想用特定的命令来改变它们。但是,我不知道如何访问这些 LinkedList。如果我使用 .get,我只会收到保存的 LinkedList 作为对象。我发现无法读取保存在此对象或更早的 LinkedList 中的项目。
LinkedList listrows = new LinkedList();
LinkedList listcolumn1 = new LinkedList();
LinkedList listcolumn2 = new LinkedList();
listcolumn1.add("test");
listcolumn1.add("test");
listcolumn2.add("hello");
listcolumn2.add("hello");
listrows.add(listcolumn1);
listrows.add(listcolumn2);
//here is my problem now, I cannot save it as a LinkedList
//because linkedlist is giving back an object
LinkedList listedit= new LinkedList();
listedit=listrows.get(0) //<-error
//If I use syso, only the object name is printed
System.out.println(listrows.get(0)) //Printed e.g.: [Ljava.lang.String;@55f96302]
提前感谢您的帮助!
您应该声明您需要的确切类型:
LinkedList<LinkedList<String>> listrows = new LinkedList<>();
LinkedList<String> listcolumn1 = new LinkedList<>();
LinkedList<String> listcolumn2 = new LinkedList<>();
然后:
LinkedList<String> listedit = listrows.get(0);
您的问题是您使用了原始 LinkedList
类型,因此 listrows.get(0)
返回了 Object
类型的实例而不是内部 LinkedList
.
您必须根据通用编程概念来执行此操作,
LinkedList<String> lt1=new LinkedList<String>();
LinkedList<String> lt2=new LinkedList<String>();
LinkedList< LinkedList<String>> lt=new LinkedList< LinkedList<String>>();
lt1.add("One");
lt1.add("Two");
lt1.add("Three");
lt2.add("A");
lt2.add("B");
lt2.add("C");
lt.add(lt1);
lt.add(lt2);
System.out.println(""+lt.get(0));