について初めて学び始めたときHashMap
、私は自分の会社の社内向け Android アプリを作成し、各項目のプロパティの個別のマップを作成しました。ラインアイテムは動的で、対応する値を持ついくつかのプロパティがあります。
例 (すべてのマップが含まれているわけではありません):
// Preceding onCreate()
HashMap<Integer, Double> latMap;
HashMap<Integer, Double> lngMap;
HashMap<Integer, String> descMap;
// In onCreate()
latMap = new HashMap<Integer, Double>();
lngMap = new HashMap<Integer, Double>();
descMap = new HashMap<Integer, String>();
LogCat (構造: {ItemNumber=Value, ItemNumber=Value}
):
-- latMap output --
{1=0.0, 2=0.0}
-- lngMap output --
{1=0.0, 2=0.0}
-- descMap output --
{1=NULL, 2=NULL}
現在、2 つのマップのみをテストしています。メインHashMap
にはアイテム番号が含まれており、個々のプロパティと値を保持するマップが含まれています。
例:
// Preceding onCreate()
HashMap<Integer, HashMap<String, String>> testMapFull;
HashMap<String, String> testMapContent;
// In onCreate()
testMapFull = new HashMap<Integer, HashMap<String, String>>();
testMapContent = new HashMap<String, String>();
LogCat (構造: {ItemNumber{Property=Value, Property=Value}}
):
{
1={
object_lat=0.0,
object_lng=0.0,
desc=NULL,
},
2={
object_lat=0.0,
object_lng=0.0,
desc=NULL,
}
}
私の質問: メモリ効率などに大きな違いはありますか? 現在、すべてがそのまま機能しています。はい、2 つのマップは複数のマップよりも優れている必要があることはわかっていますが、それらには同じ量の情報が含まれており、インスタンス化する必要はありません。