我通过逐个放置值来创建一个HashMap。当我在每次迭代后打印hashmap时,所得到的散列表包含所有键的相同值。我不明白为什么会发生这种情况。我粘贴了下面的输出HashMap值在所有键中被替换
HashMap(String,List(Object))mRestrictions;
for(int k = 0; k < jArr.length(); k++){
Log.d(TAG,"inner Key:- "+jArr.getString(k)+" Values:- "+jObj.get(jArr.getString(k)));
list.clear();
list.add(0,jObj.get(jArr.getString(k)));
//Log.d(TAG, "Existing List:- "+list);
mRestrictions.put(jArr.getString(k),list);
Log.d(TAG, "One by One Restrictions:- "+mRestrictions);
}
输出: -
逐个限制: - {PROFILE_NAME = [测试1]}
逐个限制: - {PROFILE_NAME = [URL],网址= [URL}
逐个限制: - {PROFILE_NAME = [0],动作= [0],URL = [0]}
逐个限制: - {PROFILE_NAME = [证书],动作= [证书] ,authentication_type = [证书],你的L = [证书]}
逐个限制: - {PROFILE_NAME = [兰芝斯],authentication_type = [兰芝斯],用户名= [兰芝斯],动作= [兰芝斯],网址= [兰芝斯]}
这是什么语言? Java的?请适当标记。 – duffymo
你能告诉我们'jArr'的定义吗?这看起来可能是实现中的一个错误。 – templatetypedef
jArr是jsonArray,jArr: - [“profile_name”,“url”,“action”,“authentication_type”,“username”] –