Java Lombok | final 변수 선언 - val 변수

val 변수

val 라는 타입으로 변수를 정의하면, 대입한 값에서 적당한 타입을 추론해 주고 final이 선언이 된다.

package com.devkuma.tutorial.lombok; import lombok.val; import java.util.Arrays; import java.util.HashMap; public class ValTutorial { public static void main(String... args) { val list = Arrays.asList("devkuma", "araikuma", "kimkc"); list.forEach(System.out::println); val map = new HashMap<String, Long>(); map.put("hoge", 1L); map = null; } }

위에 소스 코드중에 map을 val로 선언한 코드에서 대해서도 아래와 같이 일반 유형도 제대로 로드되는 걸 볼 수 있다.

lombok val 변수

val에서 정의 된 변수에는 final이 선언된 것이기에 다시 할당 할 수 없다.

lombok val 변수

map = null; 코드를 작성하여 실행하면 아래와 같이 에러 발생한다.

D:\dev\\java-lombok-tutorial\src\main\java\com\devkuma\tutorial\lombok\ValTutorial.java:17: error: cannot assign a value to final variable map map = null; ^



최종 수정 : 2024-01-18