Java,将链表与数组进行比较

Java,将链表与数组进行比较,java,arrays,loops,linked-list,Java,Arrays,Loops,Linked List,在一个Java程序上工作,该程序将读取两个不同的段落,将两个字符串转换为每个单词的字符串数组,然后将一个字符串转换为链表,链表将立即按字母顺序排序 列表排序后,我感到困惑。我编写了一个for循环来获取array2的长度,以便根据需要对其进行推进,但是对于通过链表进行推进,什么样的循环才是好的呢?这可能是最基本的,但我什么也没想到 编辑:保留这一点信息。我的错。重点是逐字比较数组和链接列表,如果两个单词匹配,则该单词和节点将从链接列表中删除 另外,关于Java LinkedList类的另一个问题是

在一个Java程序上工作,该程序将读取两个不同的段落,将两个字符串转换为每个单词的字符串数组,然后将一个字符串转换为链表,链表将立即按字母顺序排序

列表排序后,我感到困惑。我编写了一个for循环来获取array2的长度,以便根据需要对其进行推进,但是对于通过链表进行推进,什么样的循环才是好的呢?这可能是最基本的,但我什么也没想到

编辑:保留这一点信息。我的错。重点是逐字比较数组和链接列表,如果两个单词匹配,则该单词和节点将从链接列表中删除

另外,关于Java LinkedList类的另一个问题是,是否有delete函数?如果是这样,它是否会自动将其向后拉并链接两个线程

我已经测试了字符串是否被正确分配,它们是否正确

节目如下

package algorithm;
import java.io.File;
import java.io.FileWriter;
import java.io.FileNotFoundException;
import java.util.Collections;
import java.util.List;
import java.util.Arrays;
import java.util.LinkedList;
import java.util.Scanner;

public class main 
{

    public static void main (String[] args) throws FileNotFoundException
    {   
        String input1 = new Scanner(new File("passage1.txt")).useDelimiter("\\Z").next();
        String input2 = new Scanner(new File("passage2.txt")).useDelimiter("\\Z").next();
        String[] array1 = input1.split(" ");
        String[] array2 = input2.split(" ");

        List<String> list = new LinkedList(Arrays.asList(array1));

        Collections.sort(list);

        int length = array2.length;

        for (int c = 0; c < length; c++)
        {
            // LinkedList loop here


        }
    }
}
包算法;
导入java.io.File;
导入java.io.FileWriter;
导入java.io.FileNotFoundException;
导入java.util.Collections;
导入java.util.List;
导入java.util.array;
导入java.util.LinkedList;
导入java.util.Scanner;
公共班机
{
公共静态void main(字符串[]args)引发FileNotFoundException
{   
String input1=new Scanner(新文件(“passage1.txt”)。使用分隔符(\\Z”)。next();
String input2=新扫描仪(新文件(“passage2.txt”)。使用分隔符(\\Z”)。下一步();
字符串[]数组1=input1.split(“”);
字符串[]array2=input2.split(“”);
List List=newlinkedlist(Arrays.asList(array1));
集合。排序(列表);
int length=array2.length;
for(int c=0;c
只需使用列表界面中定义的
布尔移除调用(集合c)
方法即可。您需要做的是,您需要将其作为集合的实例。就你而言

List<String> list = new LinkedList(Arrays.asList(array1));
Collections.sort(list);
List<String> toRemove = new LinkedList(Arrays.asList(array2));
list.removeAll(toRemove);
List List=newlinkedlist(Arrays.asList(array1));
集合。排序(列表);
List toRemove=newlinkedlist(Arrays.asList(array2));
列表。删除所有(删除);
现在,list对象将包含toRemove对象中不存在的元素