使用Lambda表达式,我想使用Java语言
对整数值进行排序public class Test_LAMBDA_Expression {
public static void main(String[] args) {
List<Test_Product> list= new ArrayList<Test_Product>();
list.add(new Test_Product(1,"HP Laptop",25000f));
list.add(new Test_Product(2,"Keyboard",300f));
list.add(new Test_Product(2,"Dell Mouse",150f));
list.add(new Test_Product(4,"Dell PC",150f));
list.add(new Test_Product(5,"Dell Printer",150f));
System.out.println("Sorting by name");
Collections.sort(list,(p1,p2)->{
return p1.name.compareTo(p2.name);
});
for(Test_Product p: list){
System.out.println(p.id+" "+p.name+" "+p.price);
}
}
}
现在我想使用id排序。我怎么能这样做?
答案 0 :(得分:4)
您可以使用(假设int
是Collections.sort(list, Comparator.comparingInt(p -> p.id));
):
;date.timezone =
答案 1 :(得分:1)
你可以使用lambda并获取id来比较列表中的那些元素
list.sort((x, y) -> Integer.compare(x.getId(), y.getId()));
System.out.println(list);
答案 2 :(得分:1)
像这样:
Collections.sort(list,(p1,p2)->Integer.compare(p1.id, p2.id));