Javaでのマップの浅いコピー
私が理解しているように、MapJavaで浅いコピーを作成するには、いくつかの方法があります(おそらく他の方法も)。 Map<String, Object> data = new HashMap<String, Object>(); Map<String, Object> shallowCopy; // first way shallowCopy = new HashMap<String, Object>(data); // second way shallowCopy = (Map<String, Object>) ((HashMap<String, Object>) data).clone(); ある方法が他の方法よりも優先されますか?そうであれば、なぜですか? 言及する価値のあることの1つは、2番目の方法で「未チェックのキャスト」警告が表示されることです。その@SuppressWarnings("unchecked")ため、これを回避するために追加する必要があります。これは少しイライラします(以下を参照)。 @SuppressWarnings("unchecked") public Map<String, Object> getDataAsMap() { // return a shallow copy of the data map return (Map<String, Object>) ((HashMap<String, …