我确信您可能从CompSci学生那里得到了很多,我尝试搜索,但我的情况与我能找到的其他东西有很大不同。无论如何,这是我的课程,应该对整数数组进行排序(然后在将来将其修改为对对象进行排序,但ints会立即进行)。

我的目标是制作一个arrayList,它基本上是一排存储桶。那么每个存储桶都是一个链表。我觉得自己走在正确的道路上,但是编译器不喜欢我的最后一行代码,因此我的想法已经用完了。

这是一个更新。这就是我现在所拥有的,但是我仍然认为它不会起作用

public void sorter(){
    int highest_int = 0;

    for(int i=0; i<entries.length; i++){
        if (highest_int < entries[i])
        highest_int = entries[i];
        }

ArrayList<LinkedList<Integer>> row = new ArrayList<LinkedList<Integer>>();
LinkedList<Integer> column = new LinkedList<Integer>();

    while (highest_int>0){
        row.add(column);
        highest_int--;
    }

    for(int i=0; i<entries.length; i++){
        int j = entries[i];
        column.add(0, j);
        row.set(j, column);
    }



}

最佳答案

编译器“不喜欢”您的代码,因为add()LinkedList方法不返回任何内容(具有void返回类型)。因此,不能将其用作set()方法的参数。基本上,add()修改了被调用的对象,但不将该对象作为值返回。

我可以建议的最简单的更改是:

for(int i=0; i<entries.length; i++){
    int j = entries[i];
    column.add(0, j);
    row.set(j, column);
}


除此之外,我不清楚您在此实际上要完成什么。我什么都看不到。

09-05 00:50
查看更多