如何在Java中声明lambda表达式中的变量

lambda表达式 是一个函数,期望并接受输入参数,并产生输出结果。它是功能接口 的实例,也称为单个抽象方法接口(SAM 接口),如RunnableComparatorCallable 等。我们可以将变量声明为final string [] 数组,并能够在其中访问该数组索引Lambda表达式。

示例

import java.util.*;

public class LambdaTest {
   public static void main(String args[]) {
      final String[] country = {null};

      List cities = new ArrayList();
      cities.add("Hyderabad");
      cities.add("Ireland");
      cities.add("Texas");
      cities.add("Cape Town");

      cities.forEach(item -> {      
      //lambda表达式        
          if(item.equals("Ireland")){
              country[0] = "UK"; //可变数组
          }           
       });
      System.out.println(country[0]);
   }
}

输出结果

UK