如何将对象的 ArrayList 从我的 main 方法传递到另一个类中的方法(然后按特定属性排序)



这是我的主要方法

public static void main(String[] args)
    {
        ArrayList<TutorialWebsite> tutorial = new ArrayList<>();
        File tutorialsFile = null;
        Scanner infile = null;
        try {
            tutorialsFile = new File("Tutorials.txt");
            infile = new Scanner(tutorialsFile);
        }catch(FileNotFoundException e){
            e.printStackTrace();
        }
        while(infile.hasNext()){
            TutorialWebsite newTut = new TutorialWebsite();
            newTut.setLanguageName(infile.nextLine());
            newTut.setWebsiteDescription(infile.nextLine());
            newTut.setWebsiteUrl(infile.nextLine());
            tutorial.add(newTut);
        }

我想做的是在完全加载后将教程发送到位于教程网站类中的此方法

public void doInsertionSort(ArrayList<TutorialWebsite> input){
        int i, j;
        String iKey, jKey;
        for (i = 1; i < input.size(); i++){
            iKey = input.get(i).getLanguageName();
            j = i-1;
            while (i >= 0) {
                jKey = input.get(j).getLanguageName();
                if(iKey.compareTo(jKey) > 0){
                        break;
                }
                input.set(i, input.get(i+1));
                i++;
            }
            iKey = input.get(i+1).getLanguageName();
        }
    }

我试过doInsertionSort(tutorial(;但我只是得到一个"找不到符号"错误和tutorial.doInsertionSort((;和同样的错误。我真的不确定我还能怎么传递它。这是我第一次使用ArrayLists(更不用说ArrayLists的对象了(,我很难找到答案。

有两种可能性:

  1. 使doInsertionSort成为static方法,并使用TutorialWebsite.doInsertionSort(tutorial);调用它。

  2. 创建一个教程网站对象并调用该方法TutorialWebsite tw = new TutorialWebsite(...); tw.doInsertionSort(tutorial);

相关内容

最新更新