Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/375.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_Arraylist - Fatal编程技术网

Java 将Linkedlist转换为ArrayList

Java 将Linkedlist转换为ArrayList,java,arraylist,Java,Arraylist,我必须编写一个程序来执行LZWDecode,我决定使用LinkedList来编写下面的LZWDecode程序,但我想将其转换为ArrayList。任何人都知道如何将LinkedList转换为ArrayList以使其更简单。 谢谢 import java.util.*; 公共级LZWDecoder{ 专用最终整数清除表=256; _数据的私有最终int END_=257; 私有最终整数表_SIZE=4096; 私有静态LinkedList输入=新建LinkedList(); @抑制警告(“未选中”

我必须编写一个程序来执行LZWDecode,我决定使用LinkedList来编写下面的LZWDecode程序,但我想将其转换为ArrayList。任何人都知道如何将LinkedList转换为ArrayList以使其更简单。 谢谢

import java.util.*;
公共级LZWDecoder{
专用最终整数清除表=256;
_数据的私有最终int END_=257;
私有最终整数表_SIZE=4096;
私有静态LinkedList输入=新建LinkedList();
@抑制警告(“未选中”)
私有LinkedList[]表
=新链接列表[表大小];
private LinkedList temp=new LinkedList();
私有整数指数=258;
私有LinkedList跟踪=新建LinkedList();
私有布尔视图=true;
私有无效数据(){
扫描仪扫描=新扫描仪(System.in);
System.out.println(“请输入输入代码(EOD=257):”;
int n=0;
while(n!=_数据的结束&scan.hasnetint()){
n=scan.nextInt();
//System.out.println(“添加”+n);
输入。添加(n);
}
System.out.println(“解码…\n输出:”);
字符串代码=”;

对于(inti=0;i问题不够清楚。 是否要使用ArrayList而不是链表? 还是要将链接列表转换为ArrayList

首先,请在接口上声明变量,而不是在实现上声明变量

i、 e

LinkedList[]table=新建LinkedList[table_SIZE];
改用

    List<Integer>[] table = new LinkedList[TABLE_SIZE];
List[]table=newlinkedlist[table_SIZE];
请提供更多关于你真正想要什么的细节

如果要从另一个集合中获取数组列表,请执行以下操作:

   List<T> t = new ArrayList<>();
   t.addAll(linkedList);
List t=newarraylist();
t、 addAll(linkedList);
问候 Lyju

LinkedList ll=newlinkedlist();
11.添加(“A”);
11.添加(“B”);
11.添加(“C”);
11.添加(“D”);
List myAL=新数组列表(ll);
对于(对象对象:myAL)
系统输出打印项次(alObject);
因此,您可以使用带有传递集合的构造函数轻松地将LinkedList转换为ArrayList bu


希望它能消除你的疑虑。

你说的“转换”是什么意思?在代码中更改它或进行“转换”在它上面?看起来使用
enum
而不是
int
会使您受益匪浅,然后您可以向enum添加行为并丢弃switch语句。您也不需要范围检查等。请看我为什么要用赋值运算符(=)的左手声明LinkedList作为接口列表?这固有地限制了我想要从LinkedList获得的功能。如果我使用ArrayList这样做,我将失去trimToSize等功能。这似乎是一个毫无意义的功能障碍。
    List<Integer>[] table = new LinkedList[TABLE_SIZE];
   List<T> t = new ArrayList<>();
   t.addAll(linkedList);
LinkedList<String> ll= new LinkedList<String>();
ll.add("A");
ll.add("B");
ll.add("C");
ll.add("D");

List<String> myAL = new ArrayList<String>(ll);

for (Object alObject : myAL)
  System.out.println(alObject);