使用Lambda表达式,我想使用Java语言按整数值排序

时间:2017-05-22 07:58:31

标签: java lambda

使用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排序。我怎么能这样做?

3 个答案:

答案 0 :(得分:4)

您可以使用(假设intCollections.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));