Lambda表达式使用

lambda使用与未使用的对比

package com.example.demo.test;

import java.util.Collections;
import java.util.List;
import java.util.ArrayList;
import java.util.Comparator;
 
public class LambdaTest {
   public static void main(String args[]){
   
      List<String> str = new ArrayList<>();
      str.add("a ");
      str.add("z ");
      str.add("b ");
      str.add("g ");
      str.add("y ");
        
      List<String> str2 = new ArrayList<>();
      str2.add("a ");
      str2.add("z ");
      str2.add("b ");
      str2.add("g ");
      str2.add("y ");

      LambdaTest tester = new LambdaTest();

      System.out.println("使用 Java 7 测试: ");
      tester.sortUseJava7(str);
      System.out.println(str);

      System.out.println("使用 Java 8 测试: ");
      tester.sortUseJava8(str2);
      System.out.println(str2);
   }

   private void sortUseJava7(List<String> name){
      Collections.sort(name, new Comparator<String>() {
         @Override
         public int compare(String o1, String o2) {
            return o1.compareTo(o2);
         }
      });
   }

   private void sortUseJava8(List<String> name){
      Collections.sort(name,(o1,o2)->{return o1.compareTo(o2);});
   }
}

结果:
使用 Java 7 测试:
[a , b , g , y , z ]
使用 Java 8 测试:
[a , b , g , y , z ]

   public static void main(String[] args) {
         int num = 1;
        Converter<Integer,Integer > s = param -> System.out.println(String.valueOf(param + num));
        s.convert(2);

        Comparator<String> comparator = ( first,second) -> Integer.compare(first.length(), second.length());
        System.out.println(comparator.compare("sfdsfppdsf","sfdsfdsf"));
    }
    public interface Converter<T1,T2>{
        void convert(int i);
    }

结果:
3
1

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值