二、Lambda 四大内置核心函数式接口

本文通过实例代码详细介绍了Java中的Lambda四大核心接口——Consumer、Supplier、Function和Predicate的使用方法。从消费型接口的参数处理,到供给型接口的随机数生成,再到函数型接口的字符串处理,以及断言型接口的条件过滤,展示了Lambda在简化代码和提高效率上的优势。

Lambda 四大内置核心函数式接口
直接上代码

public class TestLambda{
	
	/**1.Consuner<T> 消费型接口
	  *     void accept(T t); 接收一个参数 ,无返回值
	  **/
   @Test
   public void test1(){
		happy(1000,(m)->System.out.println("每次消费"+ m + "元"));
	}
   
   public void happy(double money,Consumer<Double> con){
		con.appcept(money);
	}

  /**
    * 2.Supplier<T> 供给型接口
    **/
  @Test
  public void test(){
      List<Integer> numList = getNumList(10,()->(int) Math.random() * 100);
      for(Integer n : numList){
		System.out.println(n);	
	  }
 } 
  /**
    * 需求 产生指定个数整数放入到集合中
    **/
    public List<Integer> getNumList(int num,Suppliser<Integer> sup){
			List<Integer> list = new ArrayList<>();
			for(int i = 0 ; i< num ;i++){
				Integer n = supper.get();
				list.add(n);	
			}
			return list;
     }
     
     /**
       * 3.Function<T,R> 函数型接口
       *   T 入参类型
       *   R 返回参数类型
       **/
    @Test
    public void test2(){
		String newStr = strHandler("\t\t\t\t Hello World",(str) ->str.trim());
		System.out.println(str);
    }
	
	public String strHandler(String str,Function<String,String> mf){
		return mf.apply(str);
	}
   
   /**
   	 * 4.Predicate<T> 断言型接口
   	 **/  
   	@Test
   	public void test3(){
 		List<String> list = Arrays.asList("Hello","Lambda","ok","wwww");
 		List<String> strlist = filterStr(list,(s)-> s.length > 3);
 		for(String str : list){
         	System.out.println(str);
         }
    }
   	
   	// 需求 满足条件的字符串,放入到集合
   	public void filterStr(List<String> list,Predicate<String> pre){
		List<String> strList = new ArrayList<>();
		for(String str : list){
			if(pre.test(str)){
				strList.add(str);		
			}	
		}
		return strList;
	}
}
【电动车】基于多目标优化遗传算法NSGAII的峰谷分时电价引导下的电动汽车充电负荷优化研究(Matlab代码实现)内容概要:本文围绕“基于多目标优化遗传算法NSGA-II的峰谷分时电价引导下的电动汽车充电负荷优化研究”展开,利用Matlab代码实现优化模型,旨在通过峰谷分时电价机制引导电动汽车有序充电,降低电网负荷波动,提升能源利用效率。研究融合了多目标优化思想与遗传算法NSGA-II,兼顾电网负荷均衡性、用户充电成本和充电满意度等多个目标,构建了科学合理的数学模型,并通过仿真验证了方法的有效性与实用性。文中还提供了完整的Matlab代码实现路径,便于复现与进一步研究。; 适合人群:具备一定电力系统基础知识和Matlab编程能力的高校研究生、科研人员及从事智能电网、电动汽车调度相关工作的工程技术人员。; 使用场景及目标:①应用于智能电网中电动汽车充电负荷的优化调度;②服务于峰谷电价政策下的需求侧管理研究;③为多目标优化算法在能源系统中的实际应用提供案例参考; 阅读建议:建议读者结合Matlab代码逐步理解模型构建与算法实现过程,重点关注NSGA-II算法在多目标优化中的适应度函数设计、约束处理及Pareto前沿生成机制,同时可尝试调整参数或引入其他智能算法进行对比分析,以深化对优化策略的理解。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值