Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 插入到LinkedList的ArrayList_Java_Arrays_Arraylist_Insert_Linked List - Fatal编程技术网

Java 插入到LinkedList的ArrayList

Java 插入到LinkedList的ArrayList,java,arrays,arraylist,insert,linked-list,Java,Arrays,Arraylist,Insert,Linked List,建造商: array = new ArrayList<LinkedList<String>>(size); 它返回一个错误,说明“表达式的类型必须是数组类型,但已解析为ArrayList” 我试图使用addlinkedlist方法将字符串插入数组索引中的linkedlist节点。为什么那条线不行 *这是一个hashmap实现,顺便说一句,链表数组使用[]操作符。其他类型(如Lists)不能,必须使用方法(如get)访问其元素: array.get(index).add(

建造商:

array = new ArrayList<LinkedList<String>>(size);
它返回一个错误,说明“表达式的类型必须是数组类型,但已解析为ArrayList”

我试图使用addlinkedlist方法将字符串插入数组索引中的linkedlist节点。为什么那条线不行


*这是一个hashmap实现,顺便说一句,链表数组使用
[]
操作符。其他类型(如
List
s)不能,必须使用方法(如
get
)访问其元素:

array.get(index).add(value);

你不能访问这样的列表

以下是如何做到这一点:

ArrayList<LinkedList<String>> array = new ArrayList<LinkedList<String>>(size);

// add a bunch of lists
// How many depends on how deep you want the chaining if you are doing    
// this for a hash function.

array.add(new LinkedList<String>());
array.add(new LinkedList<String>());
array.add(new LinkedList<String>());
array.add(new LinkedList<String>());
array.add(new LinkedList<String>());

// Now based on what index you need (e.g. your hash result), you insert into that list.
int index = hashFunction(...);  
array.get(index).add("abc");
ArrayList数组=新的ArrayList(大小);
//添加一组列表
//有多少取决于你想要多深的链子,如果你正在做
//这是一个哈希函数。
add(新LinkedList());
add(新LinkedList());
add(新LinkedList());
add(新LinkedList());
add(新LinkedList());
//现在,根据您需要的索引(例如,您的哈希结果),您将插入到该列表中。
int index=hashFunction(…);
获取(索引).add(“abc”);

如果我想再次插入,并且它散列到另一个索引,我不需要为linkedList使用另一个变量名来插入该索引吗?如果我这样做了,那么我就不能让LinkedList=new LinkedList();在insert方法中,因为它一直使用变量名“list”No,所以您只需要获取需要插入的列表的索引,然后添加到该列表中。我想你是想用链结做散列函数吧?我可以添加到我的答案中,以显示多个列表。
ArrayList<LinkedList<String>> array = new ArrayList<LinkedList<String>>(size);

// add a bunch of lists
// How many depends on how deep you want the chaining if you are doing    
// this for a hash function.

array.add(new LinkedList<String>());
array.add(new LinkedList<String>());
array.add(new LinkedList<String>());
array.add(new LinkedList<String>());
array.add(new LinkedList<String>());

// Now based on what index you need (e.g. your hash result), you insert into that list.
int index = hashFunction(...);  
array.get(index).add("abc");