Java 写代码的时候如果有太多if-else不仅看起来low,也不利于阅读,利用lamda表达式可以很轻松解决这个问题,示例如下:
Integer a=5;
if(a==1){
System.out.println("a为1");
}else if(a==2){
System.out.println("a为2");
}else if(a==3){
System.out.println("a为3");
}else if(a==4){
System.out.println("a为4");
}else if(a==5){
System.out.println("a为5");
}
Mapmap=new HashMap<>(); map.put(1,()->{ System.out.println("a为1"); return null; }); map.put(2,()->{ System.out.println("2"); return null; }); map.put(3,()->{ System.out.println("3"); return null; }); map.put(4,()->{ System.out.println("a为1"); return null; }); map.put(5,()->{ System.out.println("a为5"); return null; }); map.get(a).get(); }
这两段代码的输出是一致的,当然我这里使用的式生产式接口,根据自己的需求来设置就行了。



