ArrayList<HashMap<String,Object>>集锦

1.   Android中如何从一个Activity中ArrayList<HashMap<String,Object>>传递到另一个activity?

     eg:

     存:intent.putExtra("arrayList", dataList);
     取(记得强制类型转换):
     ArrayList<HashMap<String, Object>> dataList = new ArrayList<HashMap<String, Object>>(); 
     dataList = (ArrayList<HashMap<String, Object>>) getIntent().getSerializableExtra("arrayList");

 

2.   ArrayList<HashMap<String, Object>>如何更新键值对和删除键值对?

      eg:

      String[ ] name= new String[ ]{"张三","李四","王五","赵六","霍七"}; 

         ArrayList<HashMap<String, Object>> arrayList =  new  ArrayList<HashMap<String, Object>>();
         for int  i= 0  ; i <name.length ; i++){
              HashMap<String, Object> map =  new  HashMap<String, Object>();
              map.put( "Name" , name[ i ]);
              arrayList.add(map);
         }
         // 修改制定key
         for  (HashMap<String, Object> hashMap : arrayList)
         {
             if  (hashMap.get( "Name" ).equals( "王五" ))
             {
                 hashMap.put( "Name" "小明" );
             }
         }
         // 官方推荐的删除方法
         Iterator<HashMap<String, Object>> iterator = arrayList.iterator();  
         while (iterator.hasNext())  
         {  
             if (iterator.next().get( "Name" ).equals( "李四" ))  
             {  
                 iterator.remove();  
             }  
        
         System.out.println(arrayList);
         
         运行结果:
         [{Name=张三}, {Name=小明}, {Name=赵六}, {Name=霍七}]
 
3.    ArrayList<HashMap<String, Object>>循环获取数据
       eg:
       添加数据:
            Data = new ArrayList<Map<String, Object>>();  

            Map<String,Objectmap1 = new HashMap<String,Object>();       

            map1.put("username",et_username.getText().toString().trim());  

            map1.put("password",et_password.getText().toString().trim());  

            Data.add(map1);  

        取值:
             for(Map <String, Object> m : Data){  

                  if(m!=null){  

                         String username = m.get("username").toString().trim();  

                         String password = m.get("password").toString().trim();  

                         et_username.setText(username);               

                         et_password.setText(password);         

                 }else{  

                    return;  

                 }  

            }  

        
 
 

转载于:https://www.cnblogs.com/1955/p/7352219.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ArrayList<HashMap<String, String>> grpList2 可以通过序列化(Serialization)来转换成 Object 类型。具体实现方法可以使用 Java 自带的序列化类 ObjectInputStream 和 ObjectOutputStream。示例代码如下: ```java import java.io.*; import java.util.ArrayList; import java.util.HashMap; public class SerializeDemo { public static void main(String[] args) { ArrayList<HashMap<String, String>> grpList2 = new ArrayList<>(); HashMap<String, String> map1 = new HashMap<>(); map1.put("key1_1", "value1_1"); map1.put("key1_2", "value1_2"); HashMap<String, String> map2 = new HashMap<>(); map2.put("key2_1", "value2_1"); map2.put("key2_2", "value2_2"); grpList2.add(map1); grpList2.add(map2); // 将 ArrayList<HashMap<String, String>> 转换成 Object 类型 try { FileOutputStream fileOut = new FileOutputStream("grpList2.ser"); ObjectOutputStream out = new ObjectOutputStream(fileOut); out.writeObject(grpList2); out.close(); fileOut.close(); System.out.println("Serialized data is saved in grpList2.ser"); } catch (IOException i) { i.printStackTrace(); } // 从 Object 类型转换回 ArrayList<HashMap<String, String>> try { FileInputStream fileIn = new FileInputStream("grpList2.ser"); ObjectInputStream in = new ObjectInputStream(fileIn); ArrayList<HashMap<String, String>> grpList2FromSer = (ArrayList<HashMap<String, String>>) in.readObject(); in.close(); fileIn.close(); System.out.println("Deserialized data:"); System.out.println(grpList2FromSer.get(0).get("key1_1")); System.out.println(grpList2FromSer.get(0).get("key1_2")); System.out.println(grpList2FromSer.get(1).get("key2_1")); System.out.println(grpList2FromSer.get(1).get("key2_2")); } catch (IOException i) { i.printStackTrace(); return; } catch (ClassNotFoundException c) { System.out.println("ArrayList<HashMap<String, String>> class not found"); c.printStackTrace(); return; } } } ``` 输出结果为: ``` Serialized data is saved in grpList2.ser Deserialized data: value1_1 value1_2 value2_1 value2_2 ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值