猿问

在java中创建hashMap

我对Java很陌生。我正在尝试创建一个 hashMap 并从另一个类调用 hashMap 类。我在下面有以下代码。我不断收到错误


package domain;


import java.util.HashMap;

import java.util.Map;


public class AumentumDocTypeMap {

  private HashMap<String, String> DocTypeMap = new HashMap<String, String>();

  DocTypeMap.put("7000690", "691");


  public HashMap<String, String> getTypeMap() {

       return DocTypeMap;

  }

}

我一直在 DocTypeMap.put("7000690", "691"); 上收到错误消息。在令牌上说语法错误,删除令牌


慕运维8079593
浏览 221回答 2
2回答

一只甜甜圈

您需要put在方法中移动调用,而不是类主体。添加构造函数(在创建对象时调用)以正确初始化类。package domain;import java.util.HashMap;import java.util.Map;public class AumentumDocTypeMap {&nbsp; private Map<String, String> docTypeMap;&nbsp; public AumentumDocTypeMap() {&nbsp; &nbsp; &nbsp; docTypeMap = new HashMap<String, String>();&nbsp; &nbsp; &nbsp; docTypeMap.put("7000690", "691");&nbsp; }&nbsp; public HashMap<String, String> getTypeMap() {&nbsp; &nbsp; &nbsp; &nbsp;return docTypeMap;&nbsp; }}此外,变量名中的小写首字母是标准的:)。虽然大写首字母实际上不会破坏任何东西。另请注意,我将哈希映射创建移到了构造函数中。通常,您应该避免在声明对象的地方初始化对象,而是在构造函数(或静态初始化程序块 - 您可以谷歌)中进行初始化。同样 - 正如@Maxim 在评论中指出的那样,您应该创建映射变量的类型,Map<String, String>因为它允许您将实现从哈希映射更改为链接的哈希映射或树映射。

犯罪嫌疑人X

您需要将值放入任何方法中。如果你想要那个值,它最初然后把它放在构造函数中:public class AumentumDocTypeMap {&nbsp; &nbsp; private HashMap<String, String> DocTypeMap = new HashMap<String, String>();&nbsp; &nbsp; // Constructor&nbsp; &nbsp; public AumentumDocTypeMap(){&nbsp; &nbsp; &nbsp; &nbsp; DocTypeMap.put("7000690","691");&nbsp; &nbsp; }&nbsp; &nbsp; public HashMap<String, String> getTypeMap() {&nbsp; &nbsp; &nbsp; &nbsp; return DocTypeMap;&nbsp; &nbsp; }}
随时随地看视频慕课网APP

相关分类

Java
我要回答