Class LambdaVarExamples

java.lang.Object
net.jrodolfo.java_evolution.java11.LambdaVarExamples

public class LambdaVarExamples extends Object
Demonstrates var in lambda parameters, introduced in Java 11.

Java 10 introduced var for local variables. Lambda parameters could already have inferred types, but there was no syntax for annotating those inferred parameters.

Java 11 allowed var in lambda parameter lists. The main benefit is not saving characters; it makes inferred lambda parameters consistent with local variables and allows annotations on them.

  • Constructor Details

    • LambdaVarExamples

      public LambdaVarExamples()
  • Method Details

    • normalizeNames

      public List<String> normalizeNames(List<String> names)
      Uses var for an inferred lambda parameter.
      Parameters:
      names - the names to normalize
      Returns:
      trimmed lowercase names
    • nameLengths

      public List<Integer> nameLengths(List<String> names)
      Uses an annotation on a lambda parameter whose type is inferred with var.
      Parameters:
      names - the names to inspect
      Returns:
      the name lengths