将 hadoop 的 Configuration 转换为 Map<String, String>
Convert hadoop's Configuration to Map<String, String>
如何将 hadoop 的 Configuration conf
转换为 Map<String, String>
?
我有一个以Map为参数的方法,我想将Configuration conf传递给它,那么如何在两者之间转换?
您可以使用 Configuration 提供的迭代器并构建地图。
Configuration configuration = new Configuration();
Map<String, String> map = new HashMap<>();
Iterator<Map.Entry<String,String>> iterator = configuration.iterator();
while (iterator.hasNext()) {
Map.Entry<String, String> entry = iterator.next();
map.put(entry.getKey(), entry.getValue());
}
您还可以查看 this 方法,它采用正则表达式和 returns 配置的 Map<>。
为什么不这样做:
Map<String, String> config = new HashMap<String, String>();
for(String key: conf.getKeys()){
config.put(key, conf.getString(key));
}
即迭代所有条目并添加到Map
。
如何将 hadoop 的 Configuration conf
转换为 Map<String, String>
?
我有一个以Map为参数的方法,我想将Configuration conf传递给它,那么如何在两者之间转换?
您可以使用 Configuration 提供的迭代器并构建地图。
Configuration configuration = new Configuration();
Map<String, String> map = new HashMap<>();
Iterator<Map.Entry<String,String>> iterator = configuration.iterator();
while (iterator.hasNext()) {
Map.Entry<String, String> entry = iterator.next();
map.put(entry.getKey(), entry.getValue());
}
您还可以查看 this 方法,它采用正则表达式和 returns 配置的 Map<>。
为什么不这样做:
Map<String, String> config = new HashMap<String, String>();
for(String key: conf.getKeys()){
config.put(key, conf.getString(key));
}
即迭代所有条目并添加到Map
。