我对Java和程序设计完全陌生,我可以在uni练习中使用一些帮助。
我有一个2D阵列列表,其中包含有关各种音乐专辑的信息(标题,艺术家,曲目数量,以分钟为单位的长度,价格等) 我需要创建一个列表,其中包含所有按价格升序排列的专辑。
我有点不知所措,我需要执行所有步骤-在数组列表中浏览并查看特定位置([i][position price]
),将价格从字符串转换为数组,找到最小值,将其传输到新列表中,然后将其从现有列表中删除。
我知道这很模糊,但是就像我说的我是一个完整的初学者一样,如果有人可以帮助我打破这些步骤,我将不胜感激。
和平,谢谢R
P.s。我正在学习德语,所以不确定是否在所有地方都使用了合适的vocab!
答案 0 :(得分:0)
Collections.sort(list, new Comparator<Albums>() {
@Override
public int compare(Albums o1, Albums o2) {
return o1.price < o2.price ? 1:-1;
}
});
或lambda
Collections.sort(list, (o1, o2) -> o1.price < o2.price ? 1:-1);
答案 1 :(得分:0)
如果您有一个简单的列表,假设价格是整数,则可以通过以下方式进行操作:
Collections.sort(list, Comparator.comparingInt(Album::getPrice))
如果它是一个数组,则可以类似地使用:
Arrays.sort(arr, Comparator.comparingInt(Album::getPrice))
如果price
是浮点数,则可以类似地使用comparingDouble
。
您没有提供有关代码的任何信息,因此很难说出什么情况适合您。