使用自訂 HealthMap(內含 ConcurrentHashMap)在同一 Activity 存取值:put 後 get 回傳 null。
public static Object get(String key) {
return map.remove(key); // 每次 get 都會移除!
}
get(String key) 預設呼叫 remove(key),導致 首次讀取即刪除。若程式碼中連續呼叫兩次 get,第二次自然為 null。
public static Object get(String key) {
return map.get(key); // 僅讀取
}
public static Object take(String key) {
return map.remove(key); // 明確語意:取出並移除
}
get 同一鍵值。put 後立即 System.out.println(map.size()) 驗證資料確實存入。LiveData、SharedPreferences 或 DataStore。onDestroy 清理。