Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/369.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 创建静态地图的概念_Java_Map - Fatal编程技术网

Java 创建静态地图的概念

Java 创建静态地图的概念,java,map,Java,Map,我想创建一个Map对象,只有当我们从Map中显式删除它时,它才会失去价值。 我已经创建了像 public static Map<Long,String> listUser =new HasMap<Long,String>(); publicstaticmap listUser=newhasmap(); 但每次创建类对象时,也会创建包含空值的映射的新实例。我想创建一个包含我们以前存储的值的映射实例。如果您正在描述映射的默认行为,它们会记住条目。我认为您遇到的问题是,您可

我想创建一个Map对象,只有当我们从Map中显式删除它时,它才会失去价值。 我已经创建了像

public static Map<Long,String> listUser =new HasMap<Long,String>();
publicstaticmap listUser=newhasmap();

但每次创建类对象时,也会创建包含空值的映射的新实例。我想创建一个包含我们以前存储的值的映射实例。

如果您正在描述映射的默认行为,它们会记住条目。我认为您遇到的问题是,您可能只需要一个映射,而不需要新实例。如果您需要具有第一个映射内容的第二个映射,请查看“复制构造函数”,但您提出的问题并不表明这是一个好主意。

您描述的是映射的默认行为,它们会记住条目。我认为您遇到的问题是,您可能只需要一个映射,而不需要新实例。如果您需要包含第一个映射内容的第二个映射,请查看“复制构造函数”,但您提出的问题并不表明这是一个好主意。

静态
这里的意思是,在执行程序(或服务器)的整个生命周期中,对象只创建一次


如果您想在程序执行之间存储它,您需要。

静态
这里的意思是在执行程序(或服务器)的整个生命周期中只创建一次对象


如果您想在程序执行之间存储它,您需要。

您的问题是您正在创建一个已经存在的变量的新版本。只需使用编译器创建的一个。下面是一个简单的例子:

class Example{
  public static Map<Long,String> listUser =new HashMap<Long,String>();
}

// other file
class Main{
  public static int main(String args[]){
    // Notice how I didn't have to do Example.listUser = new HashMap<etc> here
    Example.listUser.add(12, "Bob");
    Example.listUser.add(50, "George");
  }
}
类示例{
public static Map listUser=new HashMap();
}
//其他文件
班长{
公共静态int main(字符串参数[]){
//注意,我不必在这里执行Example.listUser=newhashmap
示例.listUser.add(12,“Bob”);
示例.listUser.add(50,“George”);
}
}

您的问题是您正在创建一个已经存在的变量的新版本。只需使用编译器创建的一个。下面是一个简单的例子:

class Example{
  public static Map<Long,String> listUser =new HashMap<Long,String>();
}

// other file
class Main{
  public static int main(String args[]){
    // Notice how I didn't have to do Example.listUser = new HashMap<etc> here
    Example.listUser.add(12, "Bob");
    Example.listUser.add(50, "George");
  }
}
类示例{
public static Map listUser=new HashMap();
}
//其他文件
班长{
公共静态int main(字符串参数[]){
//注意,我不必在这里执行Example.listUser=newhashmap
示例.listUser.add(12,“Bob”);
示例.listUser.add(50,“George”);
}
}

这是一个很难理解的问题。您可能应该编写一个失败的测试来演示您想要的行为,但无法找出如何实现。这是一个很难理解的问题。您可能应该编写一个失败的测试来演示您想要的行为,但无法找出如何获得。