我应该在蓝色j的方法调用中输入什么输入?

时间:2016-09-24 14:41:41

标签: java bluej

这适用于Coursera上课程软件设计原理的指定。当我尝试运行void sortbylargestdepth方法时,系统会提示我在函数调用方法中输入一些输入。我应该在那里输入什么输入来运行该方法?这是假设发生的事情,还是我在编写代码时犯了错误?下面我已经包含了代码以及问题的屏幕截图:希望很快得到回复。

以下是该方法的代码:

public void sortByLargestDepth(ArrayList<QuakeEntry> in) {    
    for (int i=0; i< 50; i++) {    
        int minIdx = getLargestDepth(in,i);    
        QuakeEntry qi = in.get(i);    
        QuakeEntry qmin = in.get(minIdx);    
        in.set(i,qmin);    
        in.set(minIdx,qi);   
    }

enter image description here

1 个答案:

答案 0 :(得分:0)

该方法应将签名更改为:

public void sortByLargestDepth(ArrayList<QuakeEntry> quakeEntries)

因为该方法需要ArrayList<QuakeEntry(QuakeEntry列表) 因此,如果尚未提供列表,则需要创建一个列表并将其传递给方法调用。

因为我们没有QuakeEntry的代码,所以我假设有一个默认的无参数构造函数。它看起来像是:

ArrayList<QuakeEntry> entries = new ArrayList<>();
QuakeEntry entry1 = new QuakeEntry();
//Init entry 1 here
QuakeEntry entry2 = new QuakeEntry();
//Init entry 2 here (or better yet have a constructor that allows you to init
sortByLargestDepth(entries);