【Java】Java8的lambda表达式

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/yr12Dong/article/details/80888136

今天写代码的时候 突然遇到了object.foreach(item->System.out.println(itme))这个东西,查了一下是Java8的lambda表达式。
lambda表达式相同于数组或者Collection的Iterator都是用来遍历相关数据结构的。

举两个例子,就能知道如何使用。

----------------list----------------
package lambda;

import java.util.Iterator;
import java.util.LinkedList;
import java.util.List;

public class ListLambda {
    static List<String> list = new LinkedList<>();
    static{
        list.add("1Dong");
        list.add("2Dong");
        list.add("3Dong");
        list.add("4Dong");
    }
    static public void main(String argv[]){
        list.forEach(item->System.out.println("element in list : "+item));

        Iterator<String> iterator = list.iterator();
        while(iterator.hasNext()){
//            iterator.next();
            System.out.println(iterator.next());

        }

        for(String item:list){
            System.out.println("element in list : "+item);
        }
    }
}
--------------Result--------------
element in list : 1Dong
element in list : 2Dong
element in list : 3Dong
element in list : 4Dong
1Dong
2Dong
3Dong
4Dong
element in list : 1Dong
element in list : 2Dong
element in list : 3Dong
element in list : 4Dong
package lambda;

import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;

public class MapLambda {
    static Map<Integer,String> map = new HashMap<>();
    static {
        map.put(1,"1Dong");
        map.put(2,"2Dong");
        map.put(3,"3Dong");
    }
    static public void main(String argv[]){

        map.forEach((k,v)->System.out.println("Key :"+k+" value : "+v));

        for(Map.Entry<Integer,String> entry:map.entrySet()){
            System.out.println("Key :"+entry.getKey()+" value : "+entry.getValue());
        }
    }
}
-----------------Result-----------------
Key :1 value : 1Dong
Key :2 value : 2Dong
Key :3 value : 3Dong
Key :1 value : 1Dong
Key :2 value : 2Dong
Key :3 value : 3Dong

猜你喜欢

转载自blog.csdn.net/yr12Dong/article/details/80888136