如何将hadoop的Configuration conf
转换为Map<String, String>
?
我有一个方法,将Map作为参数,我想将Configuration conf传递给它,那么如何在两者之间进行转换?
答案 0 :(得分:2)
您可以使用Configuration提供的迭代器并构建Map。
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方法,该方法采用正则表达式并返回Map&lt;&gt;配置。
答案 1 :(得分:1)
为什么不这样做:
Map<String, String> config = new HashMap<String, String>();
for(String key: conf.getKeys()){
config.put(key, conf.getString(key));
}
即迭代所有条目并添加到Map
。