Java eclipse 中的列表

Java Lists in eclipse

真是一道基础题,却一直找不到答案。我只是在摆弄一些基本的 Collection 方法(如下例),是的,它可以正常工作。问题不在这段代码中,我认为更多的是关于日食。因为在 Eclipse 中,每次当我用 "list" 之类的 "List list = new ArrayList();" 字创建 smth 时,我都会出错。或者当我以其他一些工作方式创建它时,我无法访问 Collections。选项。我认为只有 Collections.combine。 sort 和所有其他的都没有真正找到并且不工作(所以我切换到 netbeans 使这个代码工作和实践)并且它工作得很好。但是如何使它在日食中工作? p.秒。我已经导入了所有需要的东西。

ArrayList<String> list2 = new ArrayList<String>();
    String[] programs = {"eclipse", "netbeans", "codeblocks", "visual studio"};

    ArrayList<String>convertedlist = new ArrayList(Arrays.asList(programs));

            convertedlist.add("\nnotepad++");
    output(convertedlist);
            System.out.println("\nsorted list");                
            Collections.sort(convertedlist);
            output(convertedlist);
            System.out.println("\nreverse order");
            Collections.sort(convertedlist, Collections.reverseOrder());
            output(convertedlist);
            System.out.println("\nsecond array element");
            programs = convertedlist.toArray(new String[convertedlist.size()]);
            System.out.println(programs[1]);

            System.out.println("\nfilled list");
            Collections.fill(convertedlist, "L");
            output(convertedlist);
            System.out.println("\nadded all to list2");
            Collections.addAll(list2, programs);
            output(list2);
            System.out.println("\nfrequency of word net beans in list2");
            System.out.println(Collections.frequency(list2, "netbeans

            public static void output(ArrayList<String> list){
    for(String a: list)
        System.out.printf("%s ", a);

您在输出方法之前缺少括号和引号。我测试了你的代码,我似乎没有遇到任何问题。我有一个警告,上面写着:

Blockquote Description Resource Path Location Type ArrayList is a raw type. References to generic type ArrayList should be parameterized Main.java /Test/src line 11 Java Problem Blockquote

可以通过以下方式解决:

ArrayList<String>convertedlist = new ArrayList<String>(Arrays.asList(programs));

这是完整的代码,如果有任何错误请告诉我:

import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;

public class Main {

    public static void main(String[] args) {
        ArrayList<String> list2 = new ArrayList<String>();
        String[] programs = {"eclipse", "netbeans", "codeblocks", "visual studio"};

        ArrayList<String>convertedlist = new ArrayList<String>(Arrays.asList(programs));

        convertedlist.add("\nnotepad++");
        output(convertedlist);
        System.out.println("\nsorted list");                
        Collections.sort(convertedlist);
        output(convertedlist);
        System.out.println("\nreverse order");
        Collections.sort(convertedlist, Collections.reverseOrder());
        output(convertedlist);
        System.out.println("\nsecond array element");
        programs = convertedlist.toArray(new String[convertedlist.size()]);
        System.out.println(programs[1]);

        System.out.println("\nfilled list");
        Collections.fill(convertedlist, "L");
        output(convertedlist);
        System.out.println("\nadded all to list2");
        Collections.addAll(list2, programs);
        output(list2);
        System.out.println("\nfrequency of word net beans in list2");
        System.out.println(Collections.frequency(list2, "netbeans"));

    }
    public static void output(ArrayList<String> list){
        for(String a: list)
            System.out.printf("%s ", a);
    }

}