Tuesday, September 20, 2022

[FIXED] Why is this not working in Java

Issue

import java.util.function.Consumer;

public class test {
    public static void main(String[] args) {
        Consumer<String> c = (x) --> System.out.println(x.toLowerCase());
        c.accept("Java2s.com");
    }
}

with error:

Exception in thread "main" java.lang.Error: Unresolved compilation problems: x cannot be resolved to a variable x cannot be resolved at test.main(test.java:5)

But in all official documents, this is working... Could someone help me?


Solution

Change --> to -> and it should work. It would work only in java8 and later. It's a way to define lambda expression which would consume a string (in your case) and would change the case to lower.



Answered By - SMA
Answer Checked By - David Goodson (PHPFixing Volunteer)

No comments:

Post a Comment

Note: Only a member of this blog may post a comment.