Java 为什么这个map语句用这种语法格式化?
我在查看一个项目时偶然发现了这句话,我正试图弄清楚它是如何工作的Java 为什么这个map语句用这种语法格式化?,java,mapping,Java,Mapping,我在查看一个项目时偶然发现了这句话,我正试图弄清楚它是如何工作的 private Map<String, Map<String, List>> bank; 另一个例子是: a3("Distinct", "adjective", "Unique. No duplicates. Clearly different or of a different kind.") 我知道地图是如何工作的(如果我错了,请纠正我)。在本例中,单词“Distinct”映射到词性(映射到包含同一
private Map<String, Map<String, List>> bank;
另一个例子是:
a3("Distinct", "adjective", "Unique. No duplicates. Clearly different or of a different kind.")
我知道地图是如何工作的(如果我错了,请纠正我)。在本例中,单词“Distinct”映射到词性(映射到包含同一单词定义的列表)
我的主要问题是,这是一个如何有效的语句,以及为什么语法与通常创建映射不同,例如:
Map<String, String> myMap = new HashMap<String, String>();
Map myMap=newhashmap();
任何帮助都会很好,非常感谢
Map<String, List<String>> map = new HashMap<>();
要在此处输入值,请使用以下结构:
map.computeIfAbsent("Distinct", k->new HashMap<>()).computeIfAbsent("adjective", k->new ArrayList<>()).add("Familiar. Worked in Java.")
map.computeIfAbsent("Distinct", k->new HashMap<>()).computeIfAbsent("adjective", k->new ArrayList<>()).add("Unique. No duplicates. Clearly different or of a different kind.")
map.computeIfAbsent(“Distinct”,k->new HashMap()).computeIfAbsent(“形容词”,k->new ArrayList()).add(“熟悉的.在Java中工作过”)
map.computeIfAbsent(“Distinct”,k->new HashMap()).computeIfAbsent(“形容词,k->new ArrayList()).add(“唯一。无重复。明显不同或不同类型。”)
看到和
要在此处输入值,请使用以下结构:
map.computeIfAbsent("Distinct", k->new HashMap<>()).computeIfAbsent("adjective", k->new ArrayList<>()).add("Familiar. Worked in Java.")
map.computeIfAbsent("Distinct", k->new HashMap<>()).computeIfAbsent("adjective", k->new ArrayList<>()).add("Unique. No duplicates. Clearly different or of a different kind.")
map.computeIfAbsent(“Distinct”,k->new HashMap()).computeIfAbsent(“形容词”,k->new ArrayList()).add(“熟悉的.在Java中工作过”)
map.computeIfAbsent(“Distinct”,k->new HashMap()).computeIfAbsent(“形容词,k->new ArrayList()).add(“唯一。无重复。明显不同或不同类型。”)
请参见和您显示的语句没有创建
映射
。它只是声明了一个变量。而且它真的应该是私有地图库代码>因为地图中的列表似乎是字符串列表。感谢您的回复。只是澄清一下,这意味着bank变量就是映射本身,对吗?变量(如果它是对象类型,如bank
)可以为null,也可以引用对象。创建对象与使变量引用对象是一项独立的工作。我明白了。感谢您的解释。您显示的语句不是在创建映射。它只是声明了一个变量。而且它真的应该是私有地图库代码>因为地图中的列表似乎是字符串列表。感谢您的回复。只是澄清一下,这意味着bank变量就是映射本身,对吗?变量(如果它是对象类型,如bank
)可以为null,也可以引用对象。创建对象与使变量引用对象是一项独立的工作。我明白了。谢谢你的解释。谢谢你的解释;现在肯定更清楚了。我将尝试使用您提供的上述代码添加实验;现在肯定更清楚了。我将尝试添加对您提供的上述代码的实验。
Map<String, Map<String, List<String?>> map = new HashMap<>();
map.computeIfAbsent("Distinct", k->new HashMap<>()).computeIfAbsent("adjective", k->new ArrayList<>()).add("Familiar. Worked in Java.")
map.computeIfAbsent("Distinct", k->new HashMap<>()).computeIfAbsent("adjective", k->new ArrayList<>()).add("Unique. No duplicates. Clearly different or of a different kind.")