Java Articles

Page 288 of 450

How to use a final or effectively final variable in lambda expression in Java?

raja
raja
Updated on 10-Jul-2020 2K+ Views

The effectively final variables refer to local variables that are not declared final explicitly and can't be changed once initialized. A lambda expression can use a local variable in outer scopes only if they are effectively final.Syntax(optional) (Arguments) -> bodyIn the below example, the "size" variable is not declared as final but it's effective final because we are not modifying the value of the "size" variable.Exampleinterface Employee { void empData(String empName); } public class LambdaEffectivelyFinalTest { public static void main(String[] args) { int size = 100; ...

Read More

How to create a thread using lambda expressions in Java?

raja
raja
Updated on 10-Jul-2020 7K+ Views

The lambda expressions are introduced in Java 8. It is one of the most popular features of Java 8 and brings functional programming capabilities to Java. By using a lambda expression, we can directly write the implementation for a method in Java.In the below program, we can create a thread by implementing the Runnable interface using lamda expression. While using the lambda expressions, we can skip the new Runnable() and run() method because the compiler knows that Thread object takes a Runnable object and that contains only one method run() that takes no argument.Examplepublic class LambdaThreadTest { ...

Read More

Differences between anonymous class and lambda expression in Java?

raja
raja
Updated on 10-Jul-2020 3K+ Views

Anonymous class is an inner class without a name, which means that we can declare and instantiate class at the same time. A lambda expression is a short form for writing an anonymous class. By using a lambda expression, we can declare methods without any name.Anonymous class vs Lambda ExpressionAn anonymous class object generates a separate class file after compilation that increases the size of a jar file while a lambda expression is converted into a private method. It uses invokedynamic bytecode instruction to bind this method dynamically, which saves time and memory.We use this keyword to represent the current ...

Read More

How to implement lambda expression without creating an anonymous class in Java?

raja
raja
Updated on 10-Jul-2020 362 Views

A lambda expression is an anonymous function without having any name and does not belong to any class that means it is a block of code that can be passed around to execute.Syntax(parameter-list) -> {body}We can implement a lambda expression without creating an anonymous inner class in the below program. For the button's ActionListener interface, we need to override one abstract method addActionListener() and implement the block of code using the lambda expression.Exampleimport java.awt.*; import java.awt.event.*; import javax.swing.*; public class LambdaExpressionButtonTest extends JFrame { private JButton btn; public LambdaExpressionButtonTest() { ...

Read More

Are lambda expressions objects in Java?

raja
raja
Updated on 10-Jul-2020 2K+ Views

Yes, any lambda expression is an object in Java. It is an instance of a functional interface. We have assigned a lambda expression to any variable and pass it like any other object.Syntax(parameters) -> expression or (parameters) -> { statements; }In the below example, how a lambda expression has assigned to a variable and how it can be invoked.Example@FunctionalInterface interface ComparatorTask { public boolean compare(int t1, int t2); } public class LambdaObjectTest { public static void main(String[] args) { ...

Read More

What are the scoping rules for lambda expressions in Java?

raja
raja
Updated on 10-Jul-2020 639 Views

There are different scoping rules for lambda expression in Java. In lambda expressions, this and super keywords are lexically scoped means that this keyword refers to the object of the enclosing type and the super keyword refers to the enclosing superclass. In the case of an anonymous class, they are relative to the anonymous class itself. Similarly, local variables declared in lambda expression conflicts with variables declared in the enclosing class. In the case of an anonymous class, they are allowed to shadow variables in the enclosing class.Example@FunctionalInterface interface TestInterface { int calculate(int x, int y); } ...

Read More

How many parameters can a lambda expression have in Java?

raja
raja
Updated on 10-Jul-2020 4K+ Views

The lambda expressions are easy and contain three parts like parameters (method arguments), arrow operator (->) and expressions (method body). The lambda expressions can be categorized into three types: no parameter lambda expressions, single parameter lambda expressions and multiple parameters lambda expressions.Lambda Expression with no parameterWe need to create no parameter lambda expression then start the expression with empty parenthesis.Syntax() -> { //Body of no parameter lambda }Example(no parameter Lambda)import java.util.function.*; import java.util.Random; public class LambdaExpression1 { public static void main(String args[]) { NumberUtil num = new ...

Read More

What are block lambda expressions in Java?

raja
raja
Updated on 10-Jul-2020 1K+ Views

A lambda block states that lambda expression with multiple statements. It expands the type of operations to perform with a lambda expression. The multiple statements containing bodies are called expression bodies. A lambda expression with expression bodies is called expression lambdas. Whenever we are using expression lambdas, explicitly use a return statement to return a value.Exampleinterface NumberFinder { int finder(int number1, int number2); } public class LambdaNumberFinder { public static void main(String args[]) { NumberFinder numberFinder = (number1, number2) -> { ...

Read More

What to use @SerializedName annotation using Gson in Java?

raja
raja
Updated on 09-Jul-2020 8K+ Views

The @SerializedName annotation can be used to serialize a field with a different name instead of an actual field name. We can provide the expected serialized name as an annotation attribute, Gson can make sure to read or write a field with the provided name.Syntax@Retention(value=RUNTIME) @Target(value={FIELD, METHOD}) public @interface SerializedNameExampleimport com.google.gson.*; import com.google.gson.annotations.*; public class SerializedNameTest { public static void main(String args[]) { Gson gson = new GsonBuilder().setPrettyPrinting().create(); Person person = new Person(115, "Raja Ramesh", "Hyderabad"); String jsonStr = ...

Read More

How to implement custom JsonAdapter using Gson in Java?

raja
raja
Updated on 09-Jul-2020 3K+ Views

The @JsonAdapter annotation can be used at field or class level to specify the Gson. The TypeAdapter class can be used to convert Java objects to and from JSON. By default, Gson library converts application classes to JSON by using built-in type adapters but we can override it by providing custom type adapters.Syntax@Retention(value=RUNTIME) @Target(value={TYPE, FIELD}) public @interface JsonAdapterExampleimport java.io.IOException; import com.google.gson.Gson; import com.google.gson.TypeAdapter; import com.google.gson.annotations.JsonAdapter; import com.google.gson.stream.JsonReader; import com.google.gson.stream.JsonWriter; public class JsonAdapterTest { public static void main(String[] args) { Gson gson = new Gson(); System.out.println(gson.toJson(new ...

Read More
Showing 2871–2880 of 4,498 articles
« Prev 1 286 287 288 289 290 450 Next »
Advertisements