首页 > 编程知识 正文

java如何设置mapping映射,javamap怎么取值

时间:2023-05-04 06:01:50 阅读:197131 作者:2257

@[TOC](Java Map getOrDefault() 示例 | Map获取值为空则取默认值)

getOrDefault是java.util.Map的默认方法,在Java 8中被引入。

getOrDefault方法返回给定键的值,如果没有与该键相关的值,那么将返回指定的默认值。

找到该方法的签名。

default V getOrDefault(Object key, V defaultValue)

key: 要获得该值的键。
defaultValue: 默认值。

返回值是一个与键相关的值,如果没有则返回默认值。

例1:在本例中,我们使用HashMap。

GetOrDefault1.java

import java.util.HashMap;import java.util.Map;public class GetOrDefault1 { public static void main(String[] args) { Map<Integer, String> studentMap = new HashMap<>(); studentMap.put(101, "Mahesh"); studentMap.put(102, "Suresh"); studentMap.put(103, "Krishna"); String defaultValue = "No Student"; String stdName = studentMap.getOrDefault(102, defaultValue); System.out.println(stdName); stdName = studentMap.getOrDefault(104, defaultValue); System.out.println(stdName); stdName = studentMap.getOrDefault(105, defaultValue); System.out.println(stdName); }}

输出

SureshNo StudentNo Student

对于键102,在Map中存在相关的值,所以我们得到该值。

对于键104和105,没有相关的值,因此我们将得到指定的默认值。

例2:在本例中,我们使用的是LinkedHashMap。

GetOrDefault2.java

import java.util.LinkedHashMap;import java.util.Map;public class GetOrDefault2 { public static void main(String[] args) { Map<Integer, Integer> numberMap = new LinkedHashMap<>(); numberMap.put(1, 100); numberMap.put(2, 200); numberMap.put(3, 300); Integer defaultValue = 0; Integer val = numberMap.getOrDefault(2, defaultValue); System.out.println(val); val = numberMap.getOrDefault(6, defaultValue); System.out.println(val); val = numberMap.getOrDefault(7, defaultValue); System.out.println(val); }}

输出

20000

例3: 在本例中,我们使用TreeMap。

GetOrDefault3.java

import java.util.ArrayList;import java.util.Arrays;import java.util.List;import java.util.Map;import java.util.TreeMap;public class GetOrDefault3 { public static void main(String[] args) { Map<String, List<String>> treeMap = new TreeMap<>(); treeMap.put("color", Arrays.asList("Orange", "Yellow")); treeMap.put("game", Arrays.asList("Cricket", "Hockey")); List<String> defaultValue = new ArrayList<>(); List<String> val = treeMap.getOrDefault("game", defaultValue); System.out.println(val); val = treeMap.getOrDefault("city", defaultValue); System.out.println(val); }}

输出

[Cricket, Hockey][] 参考文献

【1】Java doc: Map
【2】Java Map getOrDefault() Example

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。