问题标签 [bimap]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
336 浏览

java - 使用 xStream 序列化 BiMap

我想用xStream序列化BiMap。由于我不喜欢 xStream 为 BiMap 自动生成的代码,我认为将 BiMap 转换为 HashMap 并仅序列化 HashMap 可能是个好主意,当反序列化它时,我只是再次读取 HashMap 并将其转换回来到 BiMap。所以我想出了以下转换器策略:

这工作得很好,因为 xStream 已经可以转换 HashMaps。奇怪的是,它只有在 BiMap 中有值时才有效。如果 BiMap 为空,我会在解组数据时收到以下异常:

使用转换器后生成的输出(当 BiMap 为空时!)如下:

谁能告诉我,我做错了什么?

0 投票
1 回答
913 浏览

caching - 番石榴缓存的 BiMap 功能?

我在数据库中有一个简单的映射表,它将整数键与某些值相关联。一旦我将这些值粘贴在表格中,它们就永远不会消失。我想使用番石榴Cache,这样这些键就可以被查找一次,然后保存在内存中。看起来番石榴Cache可以让我轻松做到这一点。但是我需要映射两种方式:从键到值,以及从值到键,例如BiMap.

有没有一种简单的方法来BiMap使用 a 获得功能Cache,还是我必须推出自己的解决方案?

是否有BiMap允许并发访问的实现,或者如果我想要高效的多线程访问,我是否必须使用读写锁?

0 投票
1 回答
1041 浏览

java - Guava HashBiMap 的 containsValue 的大 O

我对使用包含唯一键和值的 Map 感兴趣。我也希望 和 具有 O(1) 复杂.containsKey().containsValue()。对我来说,似乎 aHashBiMap应该能够支持这种复杂性,因为映射和散列中键和值的唯一性。这是一个正确的假设吗?

0 投票
4 回答
1351 浏览

java - 如何从现有地图中获取给定双精度值的最接近值的键

由于我需要获取我正在使用的双精度值的键值BiMap

对于像 4.0156 这样的特定值,我必须得到键值 a2.. 也就是说,如果,

我尝试了很多方法,但它总是为空,因为没有完全匹配。请任何人帮助我...如果我选择了错误的方式,请更正它,因为我是 Java 新手。

0 投票
2 回答
797 浏览

java - 是否有具有可预测迭代顺序(插入顺序)的 BiMap 实现?

标准库LinkedHashSet是一个HashSet提供插入顺序迭代的库。是否有一个版本的番石榴BiMap可以维护键和值的插入顺序迭代?我确实需要BiMap是可变的,所以ImmutableBiMap对于我的目的来说还不够。

0 投票
1 回答
220 浏览

android - 在android中触摸浮雕位图

我正在开发颜色飞溅应用程序。我在其中使用手指颜料。

现在我想在触摸事件上浮雕位图。我在这里有一个演示,当我应用浮雕时,它会用红色绘制浮雕路径,但我想在触摸时在位图后面浮雕。

0 投票
1 回答
534 浏览

android - 发送对另一个活动 Android 进行更改的图像

我在将图像从 imageView 发送到另一个活动时遇到问题。我的代码运行良好,但仅用于发送代码中给出的图像而无需更改。我在照片上添加了过滤器,我需要发送带有这些更改的图像。这是我的代码:

第一项活动:

下一个活动:

请告诉我我应该改变什么才能正确发送带有更改的图像?

0 投票
1 回答
107 浏览

java - 如何查找文件中的子字符串是否已存在于哈希图中?

我有一个 hashMap(guava bimap),其中的键和值都是字符串,我想编写一个程序来解析给定的文件并用 Bimap 中的相应值替换文件中的所有字符串,这些字符串也在 BiMap 中。

例如:我有一个名为 test.txt 的文件有以下文本 Java is a set of several computer software and specifications developed by Sun Microsystems.

我的 BiMap 有 "java i" => "value1" "everal computer" => "value2" 等等。

所以现在我希望我的程序将 test.txt 和 Bimap 作为输入并给出一个看起来像这样的输出

请指出任何可以做到这一点的算法,该程序将大文件作为输入,所以蛮力可能不是一个好主意。

编辑:我使用固定长度的字符串作为键和值。该示例只是为了展示操作。谢谢。

0 投票
1 回答
352 浏览

templates - 模板中标记的 boost::bimap - 它们有效吗?

我在模板类中嵌入了 boost::bimap,经过多次反复试验,我发现了一些可以编译的东西和一些不能编译的东西。我正在使用 g++ (GCC) 4.9.2 20150212 (Red Hat 4.9.2-6) 和 Boost 1.55。我将给出示例 1 中的完整代码,仅给出示例 2 和示例 3 的更改部分。该函数没有做任何有用的事情,只是在这里测试语法和编译器。

编译的示例 1(完整列表):

我想将标签封装在模板类中,因为不需要在类之外知道它们。理想情况下,它们应该是私有的,但为了避免访问权限产生任何问题,它们被声明为公共的。

不编译示例 2(除外):

标签访问 bimap 的两行都会产生以下消息:

这可以理解为 Label1 需要完全限定,从成为模板类的一部分,如下所示。

然而,产生了同样的错误。问题1:有人明白为什么吗?

使用模板类 Test 的真正问题和原因是我希望 Label 1 的类型是模板参数。因此,回到示例 1 并替换std::string为模板参数。

不编译示例 3(除外):

同样,通过标签访问地图的两行都会产生上述编译错误。在重写代码以使用“左”和“右”视图之前,如果有人能帮助我理解问题2:为什么不能在标记类型的定义中使用模板参数?

感谢所有输入!

0 投票
2 回答
80 浏览

java - “容器中没有原语”规则是否适用于数组?

我最近一直在尝试实现一个简单的遗传算法。我需要使用存储成对的可逆映射(Character,4 bits)BiMap我为这项任务选择了番石榴。int但是,由于我为位存储选择了一个数组,测试不会通过。

int[]原始类型吗?使用 aVectorList整数是否更适合此任务?