java - 如何从 Map 创建 Guava HashMultiset
问题描述
这不编译:
Map<String, Object> map = new HashMap<String, Object>();
HashMultiset<Map<String, Object>> n1Properties = HashMultiset.create(map);
解决方案
没有任何重载create
方法接受Map
. 但是您可以使用该addAll
方法将Map
转换后的内容添加到Collection
.
import com.google.common.collect.HashMultiset;
import java.util.Collections;
import java.util.HashMap;
import java.util.Map;
public class SO {
public static void main(String args[]) {
Map<String, Object> map = new HashMap<>();
map.put("foo", "FOO");
map.put("bar", "BAR");
HashMultiset<Map<String, Object>> n1Properties = HashMultiset.create();
n1Properties.addAll(Collections.singleton(map));
System.out.println(n1Properties);
}
}
输出:
[{bar=BAR, foo=FOO}]
推荐阅读
- java - 对等方重置 Elasticsearch RestClient 连接
- node.js - 将列表数组对象复制到Angular 9中的另一个数组
- css - 防止连字符导致IOS中的换行符
- python - 绘制同一范围内具有不同数据点数量的几条曲线的平均曲线
- flutter - 在flutter TextFormField中完全完成文本编辑后如何调用一次方法?
- sapui5 - 如何修改 smartfilterbar 过滤器?
- c# - 带有选择单节点的 XPath
- image - SwiftUI URLImage 水平滚动视图
- react-native - React Native - Nodejs Express 社交登录
- php - WordPress / PHP'尝试从远程网址上传图像时尝试获取非对象的属性'提要'