1
如何將hadoop的Configuration conf
轉換爲Map<String, String>
?將hadoop的配置轉換爲地圖<String,String>
我有一個將Map作爲參數的方法,我想將Configuration conf傳遞給它,那麼如何在兩者之間進行轉換?
如何將hadoop的Configuration conf
轉換爲Map<String, String>
?將hadoop的配置轉換爲地圖<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方法,它需要一個正則表達式,並返回配置的地圖<>。
爲什麼不這樣做:
Map<String, String> config = new HashMap<String, String>();
for(String key: conf.getKeys()){
config.put(key, conf.getString(key));
}
也就是說,遍歷所有條目,並添加到Map
。