FastFoodCoding

Login


Connect with one of the following accounts





Login

Please wait while we redirect...

Views: 190   



1. Lists

You can create a List of elements with following one liner in Java 9

List<String> coloursList = List.of("red", "green", "blue");

List.of gives you a immutable List which means you can't modify it once created. If you try to modify the list by adding or removing an element it throws java.lang.UnsupportedOperationException

List<String> coloursList = List.of("red", "green", "blue");
coloursList.add("foo");

this results in

Exception in thread "main" java.lang.UnsupportedOperationException
    at java.base/java.util.ImmutableCollections.uoe(ImmutableCollections.java:70)
    at java.base/java.util.ImmutableCollections$AbstractImmutableList.add(ImmutableCollections.java:76)
    at StringSampleProgram.main(StringSampleProgram.java:13)

2. Sets

You can create a Set of elements with following one liner in Java 9

Set<String> coloursSet = Set.of("red", "green", "blue");

3. Maps

There are two ways you can create Immutable Map in Java9

  1. Using Map.ofEntries()
    You can use ofEntries static method and pass java.util.Map.Entry<K, V> objects to it
  2. Using Map.of()
    You can use of static method and pass keys and values one after another.

Following sample program shows you how to use both of them

import java.util.Map;
import static java.util.Map.entry;

public class Java9Maps {
    public static void main(String[] args) {

        Map<String, String> map1 = Map.ofEntries(entry("key1", "val1"), entry("key2", "val2"), entry("key3", "val3"));

        Map<String, String> map2 = Map.of("key1", "val1", "key2", "val2", "key3", "val3");

        System.out.println(map1);
        System.out.println(map2);
    }
}

Output:

{key1=val1, key2=val2, key3=val3}
{key1=val1, key2=val2, key3=val3}



On By


Top Tutorials

Top Questions

Top Articles

Top Blogs

Top News