Lambda表示式在迴圈裡的應用

2021-09-27 08:22:34 字數 1333 閱讀 9106

首先介紹的是lambda表示式在foreach中的應用,這裡我們以foreach遍歷string型別的集合為例

collectionnames = new arraylist<>();

names.add("趙大炮");

names.add("張二炮");

names.add("殷三炮");

names.add("小炮");

// system.out.println(names);

// 普通foreach迴圈

for (string name : names)

system.out.println("---------這是一條分割線-----------");

// lambda表示式

names.foreach(ele -> system.out.println(ele) );

system.out.println("---------這是一條分割線-----------");

// 進一步精簡,功能與上面相同

names.foreach(system.out::println);

這裡直接集合物件名.foreach ( lambda表示式 )就好了

接下來我們來看在comparator比較器裡面使用lambda表示式

// 建立引用型別物件

student s1 = new student("張大炮", 100, '男');

student s2 = new student("張二炮", 32, '男');

student s3 = new student("趙三炮", 22, '女');

student s4 = new student("殷四炮", 17, '女');

// 將物件新增到list集合中

collections.addall(stu_list, s1, s2, s3, s4);

system.out.println(stu_list);

// 排序

// 這個排序是只能實現公升序排序的

collections.sort(stu_list, new comparator()

});system.out.println("正常重寫公升序輸出\n" + stu_list);

// lambda表示式1

collections.sort(stu_list, (o1, o2) -> o2.getage() - o1.getage());

system.out.println("lambda表示式降序輸出\n" + stu_list);

lambda表示式 lambda表示式

1.概述 c 11 中的 lambda 表示式用於定義並建立匿名的函式物件,以簡化程式設計工作。lambda 的語法形式如下 函式物件引數 操作符過載函式引數 mutable 或 exception 宣告 返回值型別可以看到,lambda 主要分為五個部分 函式物件引數 操作符過載函式引數 muta...

在Lambda表示式中使用迴圈變數

在c 5.0之前,如果在foreach迴圈中的lambda表示式裡使用迴圈變數,那麼你會發現一些意想不到的現象,例子如下 var integers new list var actions new list foreach var integer in integers actions.foreac...

Lambda表示式和Lambda表示式樹

原版來自 linq學習筆記之二 lambda表示式和lambda表示式樹 lambda 表示式 lambda expressions 是linq實現的另一特性。lambda表示式的作用就是使用使用函式式語法,將方法實現關聯到委託例項。在使用查詢表示式 query expressions 時,查詢表示...