Java 按字母顺序排列链表

Java 按字母顺序排列链表,java,sorting,Java,Sorting,我正在处理一个数据结构分配,所以我没有使用java中内置的Linkedlist。我需要按字母顺序对节点进行排序。我可以使用这种内置的排序吗?作业没有强调我们的排序方法,所以我在寻找最简单的方法。IDE抱怨我的列表参数,这让我觉得这不可能: Collections.sort(list, new Comparator<String>() { @Override public int compare(String text1, String text2) { return text

我正在处理一个数据结构分配,所以我没有使用java中内置的Linkedlist。我需要按字母顺序对节点进行排序。我可以使用这种内置的排序吗?作业没有强调我们的排序方法,所以我在寻找最简单的方法。IDE抱怨我的列表参数,这让我觉得这不可能:

Collections.sort(list, new Comparator<String>()
{
@Override
public int compare(String text1, String text2)
{
    return text1.compareToIgnoreCase(text2);
}
});
Collections.sort(列表,新比较器()
{
@凌驾
公共整数比较(字符串text1、字符串text2)
{
返回text1.compareTignoreCase(text2);
}
});

要使用内置排序功能,列表结构必须实现
列表
界面

这是根据签名:

public static <T> void sort(List<T> list, Comparator<? super T> c)

为了能够使用内置的排序功能,列表结构必须实现
list
界面

这是根据签名:

public static <T> void sort(List<T> list, Comparator<? super T> c)

不,您只能对使用内置方法实现java.util.List的列表进行排序。

不,您只能对使用内置方法实现java.util.List的列表进行排序。

IDE到底抱怨什么?从下面列出的问题来看,我建议您自己编写排序。最简单的是冒泡排序。IDE到底抱怨什么?从下面列出的问题来看,我建议您只编写自己的排序。最简单的是冒泡排序。但是,如果我实现了列表接口,我想我并不是真正从头开始构建自己的列表,因此我将不得不在排序中弄脏。这不完全是真的,如果你实现了接口,你只需定义外部对象如何访问列表,但提供了你自己的实现。这是必需的,因为
Collection.sort(…)
方法必须知道如何访问列表。在任何情况下,作为一个数据结构分配,我想你也应该提供你自己的排序算法函数。但是,如果我实现了列表接口,我想我并不是真正从头开始构建我自己的列表,所以我将不得不在排序时弄脏。这不完全是真的,如果实现接口,则只需定义外部对象访问列表的方式,但提供自己的实现。这是必需的,因为
Collection.sort(…)
方法必须知道如何访问列表。无论如何,作为一个数据结构分配,我想你也应该提供你自己的排序算法功能。但是你可以让列表实现列表接口,然后你可以进行内置排序。同意,但考虑到OP讨论的是数据结构分配,而不想使用内置类,似乎可以概括出实现该接口的唯一方法。但您可以让列表实现列表接口,然后再进行内置排序。同意,但是,鉴于OP讨论的是数据结构分配,而不想使用内置类,因此似乎可以公平地概述实现该功能的唯一方法是实现该接口。