将列表作为属性值的java hashmap

将列表作为属性值的java hashmap,java,list,hashmap,Java,List,Hashmap,我有一个如下格式的HashMap HashMap<String, List<String>> map HashMap 我正试图在没有任何运气的情况下找到将其写入属性文件的最佳方法,这可能吗?我对HashMap HashMap没有问题,但是当值是一个列表时,我无法找出存储该值的最佳方法。我不在乎它是以xml格式还是任何其他格式输出的,只是为了方便打开文件并将其序列化或任何形式返回到hashmap中 感谢您提供的任何指导我不确定您当前正在做什么,但您可以随时获取一组组成地

我有一个如下格式的HashMap

HashMap<String, List<String>> map
HashMap
我正试图在没有任何运气的情况下找到将其写入属性文件的最佳方法,这可能吗?我对
HashMap HashMap
没有问题,但是当值是一个列表时,我无法找出存储该值的最佳方法。我不在乎它是以xml格式还是任何其他格式输出的,只是为了方便打开文件并将其序列化或任何形式返回到hashmap中


感谢您提供的任何指导

我不确定您当前正在做什么,但您可以随时获取一组组成地图的
实例,并以任何方式将其写出。看

psuedo代码看起来像

for (Map.Entry<String,List<String>> entry : map.entrySet()) {
    String key = entry.getKey();
    List<String> value = entry.getValue();

    // now loop over value, which will be of type List<String>
}
for(Map.Entry:Map.entrySet()){
String key=entry.getKey();
列表值=entry.getValue();
//现在循环值,它将是List类型
}

我不确定您当前正在做什么,但您总是可以得到一组组成映射的
映射。Entry
实例,并以您想要的任何方式写出它们。看

psuedo代码看起来像

for (Map.Entry<String,List<String>> entry : map.entrySet()) {
    String key = entry.getKey();
    List<String> value = entry.getValue();

    // now loop over value, which will be of type List<String>
}
for(Map.Entry:Map.entrySet()){
String key=entry.getKey();
列表值=entry.getValue();
//现在循环值,它将是List类型
}

哈希映射是可序列化的;因此,您可以在默认情况下执行此操作

FileOutputStream fileStream = new FileOutputStream("map.map");
ObjectOutputStream os = new ObjectOutputStream(fileStream);
os.writeObject(map);
os.close();

哈希映射是可序列化的;因此,您可以在默认情况下执行此操作

FileOutputStream fileStream = new FileOutputStream("map.map");
ObjectOutputStream os = new ObjectOutputStream(fileStream);
os.writeObject(map);
os.close();

首先,你可以考虑从番石榴中提取一种。它实现了一个
映射


接下来,我将设置一个XML模式,其中每个元素都有一个名称和一个值列表。使用JAXB将数据写入文件。

首先,您可能需要考虑从番石榴中使用A。它实现了一个

映射


接下来,我将设置一个XML模式,其中每个元素都有一个名称和一个值列表。使用JAXB将数据整理成文件。

属性是字符串。将
列表
以逗号分隔。e、 g.
value1、value2、value3、value4
并将其添加到您的属性对象中。@BrianRoach,这将假定值字符串不包含逗号。@John-嗯,是的。如果他们这样做了,你可以引用这些值,用管道代替逗号,等等。。。不是火箭科学:)@BrianRoach别这么说!我可能不会付那么多钱!;)属性是字符串。将
列表
以逗号分隔。e、 g.
value1、value2、value3、value4
并将其添加到您的属性对象中。@BrianRoach,这将假定值字符串不包含逗号。@John-嗯,是的。如果他们这样做了,你可以引用这些值,用管道代替逗号,等等。。。不是火箭科学:)@BrianRoach别这么说!我可能不会付那么多钱!;)这就是我希望做的,我的值是一个列表,它是一个子列表,导致了一个问题,但不确定最好的解决方法。这就是我希望做的,我的值是一个列表,它是一个子列表,导致了一个问题,但不确定最好的解决方法。