Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/397.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/shell/5.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:Chronicle Map是否支持不同的值类?_Java_Value Type_Chronicle Map - Fatal编程技术网

Java:Chronicle Map是否支持不同的值类?

Java:Chronicle Map是否支持不同的值类?,java,value-type,chronicle-map,Java,Value Type,Chronicle Map,我通常使用类似于这样的 编年史地图生成器 =编年史MapBuilder.of(SomeKey.class,MyImplClass.class); 历史地图 =builder.constantKeySizeBySample(someKey) .平均值(someValue) .entries(myCollection.size()) .createPersistedTo(我的文件); 编年史地图是否支持存储不同值类的实例?如果支持,如何构建该地图 例如: ChronicleMapBuilder&l

我通常使用类似于这样的

编年史地图生成器
=编年史MapBuilder.of(SomeKey.class,MyImplClass.class);
历史地图
=builder.constantKeySizeBySample(someKey)
.平均值(someValue)
.entries(myCollection.size())
.createPersistedTo(我的文件);
编年史地图是否支持存储不同值类的实例?如果支持,如何构建该地图

例如:

ChronicleMapBuilder<SomeKey, MyInterfaceThatHasManyDifferentImplementations> builder
        = // .. now what?
编年史地图生成器
= // .. 现在怎么办?
基本上,我只有一个关键类-a级。但是这个日期可以(或者至少,我希望它)映射到公共接口的不同实现。我认为自己有一个共同的界面是幸运的,但如果可以建立一个编年史地图,即使没有一个共同的接口,请告知。
很抱歉,我目前没有能力测试Chronicle Map对不同值类的支持,也无法在Internet上找到任何形式的文档。

采用两个
参数。在最坏的情况下,您可以使用
对象。class
是您的值类(第二个参数),并在映射中存储您想要的任何值。

接受两个
class
参数。在最坏的情况下,您可以使用
对象。class
是您的值类(第二个参数),并在映射中存储您想要的任何值。

您确定吗?为什么构建器要以我的类参数开始?他们肯定会对此进行大量反思。但我从来没有真正理解过为什么我会用真实的样本指定平均值大小。经过仔细检查(真实的测试)后,我发现你是对的。@MartinAndersson“构建者为什么要从我的类参数开始?”实际上是一个有趣的问题。编年史MapBuilder要求键/值类对象主要检查是否为这些类(即盒装原语、字符串、字符序列等)预定义了优化的序列化程序。只有当key/value类是一个值接口时,才会执行“Reflection vodoo”。您确定这一点吗?为什么构建器要以我的类参数开始?他们肯定会对此进行大量反思。但我从来没有真正理解过为什么我会用真实的样本指定平均值大小。经过仔细检查(真实的测试)后,我发现你是对的。@MartinAndersson“构建者为什么要从我的类参数开始?”实际上是一个有趣的问题。编年史MapBuilder要求键/值类对象主要检查是否为这些类(即盒装原语、字符串、字符序列等)预定义了优化的序列化程序。只有当key/value类是值接口时,才会执行“Reflection vodoo”。
ChronicleMapBuilder<SomeKey, MyInterfaceThatHasManyDifferentImplementations> builder
        = // .. now what?