Java Map에서 null 값을 기본값으로 바꾸려면 코드는 다음과 같습니다. -
예시
import java.util.*; import java.util.stream.*; public class Demo{ public static <T, K> Map<K, T> null_vals(Map<K, T> my_map, T def_val){ my_map = my_map.entrySet().stream().map(entry -> { if (entry.getValue() == null) entry.setValue(def_val); return entry; }) .collect(Collectors.toMap(Map.Entry::getKey, Map.Entry::getValue)); return my_map; } public static void main(String[] args){ Map<Integer, Integer> my_map = new HashMap<>(); my_map.put(1, null); my_map.put(2, 56); my_map.put(3, null); my_map.put(4, 99); int defaultValue = 0; System.out.println("The map with null values is : "+ my_map); my_map = null_vals(my_map, defaultValue); System.out.println("The map with null values replaced is : " + my_map); } }
출력
The map with null values is : {1=null, 2=56, 3=null, 4=99} The map with null values replaced is : {1=0, 2=56, 3=0, 4=99}
Demo라는 클래스에는 배열에서 null 값을 확인하고 이전에 정의된 기본값으로 대체하는 'null_vals'라는 함수가 포함되어 있습니다. 기본 기능에서 Map 인스턴스가 생성되고 'put' 기능을 사용하여 요소가 여기에 푸시됩니다. 이 맵에서 'null_vals' 함수가 호출되고 null 값이 기본값으로 대체됩니다.