Java 将ArrayList转换为排序集(TreeSet)并返回它

Java 将ArrayList转换为排序集(TreeSet)并返回它,java,arraylist,Java,Arraylist,I一种方法,它获取一个数字列表(例如,ArrayList)并将其转换为一个排序集(例如,TreeSet)并返回它。我写了代码,但我有一些问题 public TreeSet getSort (ArrayList list){ TreeSet set =new TreeSet(list); return set; 我的问题主要是: ArrayList List = new ArrayList(); List.add(5); List.add(55); List

I一种方法,它获取一个数字列表(例如,
ArrayList
)并将其转换为一个排序集(例如,
TreeSet
)并返回它。我写了代码,但我有一些问题

public TreeSet getSort (ArrayList list){
   TreeSet set =new TreeSet(list);
    return set;
我的问题主要是:

ArrayList List = new ArrayList();
    List.add(5);
    List.add(55);
    List.add(88);
    List.add(555);
    List.add(154);
    System.out.println("the TreeSet of ArrayList is : " + getSort(List));

您可能会遇到错误,因为
getSort()
不是
static
,因此无法从
main()
调用它。除此之外,您不应使用、参数化列表和集合:

ArrayList<Integer> list = ...

TreeSet<Integer> set = ...
ArrayList=。。。
树集=。。。
你应该得到有关这方面的警告

事实上,我会完全采用这种方法:

公共静态树集getSort(列表){
返回新树集(列表);
}

最后,请记住遵循命名约定:局部变量名称应以小写字母开头(即
list
而不是
list
)。

getSort()
不是静态的,不能从main调用。您需要将其设置为静态。

您需要使用类实例来调用
getSort()
方法,或者将
getSort()
设置为
static

喜欢

System.out.println("the TreeSet of ArrayList is : "+ new classname().getSort(List));
或者将方法设置为静态

    public static TreeSet getSort (ArrayList list){
       TreeSet set =new TreeSet(list);
        return set;
         }

在打印状态中给我一个错误接受
列表
-而不是
数组列表
。或者实际上是
集合
,可能有点通用。
    public static TreeSet getSort (ArrayList list){
       TreeSet set =new TreeSet(list);
        return set;
         }