import com.alibaba.fastjson.JSONObject;
import com.jd.data.util.JsonUtils;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
public class Test {
public static void main(String[] args){
//注释中的代码遍历不会有问题
// Map<Long,Map<String,Object>> map = new HashMap<Long,Map<String,Object>>();
// Map<String,Object> subMap = new HashMap<String,Object>();
// subMap.put("num",1);
// map.put(112345l,subMap);
//此种方式生成的map采用第一种方式直接遍历会出现类型转换异常
String skuMaps = "{12345789:{\"num\":1}}";
Map<Long,Map<String,Object>> map = JSONObject.parseObject(skuMaps, Map.class);
List<Long> skuIds = new ArrayList<Long>();
//遍历一
for(Object key : map.keySet()){
if(key instanceof Long){
skuIds.add((Long)key );
}
}
//遍历二
Set set = map.keySet();
for(Iterator iterator = set.iterator();iterator.hasNext();)
{
Integer s1 = (Integer)iterator.next();
skuIds.add(Long.valueOf(s1));
}
System.out.println(JsonUtils.writeValue(skuIds));
}
}
相关推荐
### Java Map遍历方法详解 在Java编程语言中,`Map`接口是集合框架中的一个核心组成部分,它存储键值对映射。本篇文章将详细介绍几种常用的遍历`Map`的方法,包括使用传统迭代器(Iterator)、增强型for循环(For-...
3. **Map遍历** Map是一个键值对的集合,不直接支持索引访问。有三种遍历Map的方法: - **方法一:通过keySet遍历** ```java Map, String> map = new HashMap, String>(); map.put("key1", "value1"); map....
Java中 List《map》把里面map中某个key相同记录的其他key 的 value 合并 Java中 List《map》把里面map中某个key相同记录的其他key 的 value 合并
### Java遍历Map对象的所有数据 在Java编程中,`Map`接口是Java集合框架中的一个关键组成部分,它用于存储键值对。本篇文章将详细解释如何遍历`Map`对象的所有数据,并介绍几种常见的遍历方法。我们将重点讨论通过`...
Java Map遍历方法是编程中常见的操作,尤其是在处理键值对数据时。Map接口在Java中扮演着重要的角色,它提供了存储和检索键值对的能力。以下是对Java Map遍历方法的详细介绍: 1. **使用迭代器遍历**: 这是最基础的...
在上面的代码中,我们使用keySet()方法获取了Map中的所有Key,然后使用迭代器遍历每个Key,并根据Key获取对应的Value。 二、使用entrySet()方法获取Key和Value Map的entrySet()方法可以获取Map中的所有键值对,...
- JDK 1.5及以后版本,可以使用增强的for循环遍历Map的键集: ```java for (String key : map.keySet()) { String value = map.get(key); // 执行相关操作 } ``` - JDK 1.4及以前版本,需要使用迭代器: ``...
- JDK 1.5及更高版本可以使用增强的for循环遍历键集,如`for (String key : map.keySet()) { map.get(key); }` - JDK 1.4或更低版本,需通过迭代器遍历,如`Iterator<String> it = map.keySet().iterator();`,...
以下是Java中Map遍历的四种常见方法: 1. **传统迭代器方法**: 这是最基础的遍历Map的方法,通过调用`keySet()`方法获取Map的所有键,然后使用迭代器遍历键集。在每次迭代中,使用`get()`方法获取对应的值。 ```...
JDK7,全称为Java Development Kit 7,是Oracle公司发布的Java平台的一个重要版本,其稳定版“jdk-7u79-windows-x64.exe”是针对Windows操作系统的64位版本。这个版本在Java 7系列中具有多项改进和新特性,对开发者...
本文档主要介绍了几种常用的遍历`Map`的方法,包括使用传统的迭代器、增强for循环(引入于JDK 1.5)以及对`TreeSet`进行排序的示例。 #### 二、Map的基本遍历方法 文档首先介绍了使用迭代器遍历`Map`的示例: ```...
`Map`是一种将键(key)映射到值(value)的对象容器,它支持通过唯一的键来查找对应的值。 #### 二、Map概述 在Java中,`Map`是一个接口,它继承自`java.util.Collection`包下的`Map`接口。`Map`的主要功能是存储键值...
Map是java中非常常用的一个集合类型,我们通常也需要去遍历Map去获取某些值,java 8引入了Stream的概念,那么我们怎么在Map中使用Stream呢? 基本概念 Map有key,value还有表示key,value整体的Entry。 创建一个Map...
Java Map 通过 key 或者 value 过滤的实例代码 Java Map 是一种常用的数据结构,用于存储键值对数据。在实际开发中,我们经常需要对 Map 中的数据进行过滤,以满足特定的业务需求。今天,我们将讨论如何使用 Java ...
2. **使用反射填充JavaBean**: 通过遍历Map的键值对,利用反射获取JavaBean的set方法,并设置相应的属性值。 ```java public static Object mapToObject(Map, Object> map, Class<?> beanClass) throws Exception {...
JDK 1.5之后引入的增强型for循环提供了一种更简洁的遍历方式。 - **使用`keySet()`方法** ```java for (Iterator<String> i = tempMap.keySet().iterator(); i.hasNext();) { String obj = i.next(); System....
- 键值对增强for:`for (Map.Entry<Key, Value> entry : map.entrySet())`。 - 值遍历:通过`values()`方法获取所有值,再进行遍历。 9. **List集合的特性:ArrayList** - ArrayList是List接口的一个实现,允许...
- `String`和`Integer`等包装类天生适合做`Map`的key,因为它们已经重写了这两个方法。 #### 使用Object作为HashMap的Key - 如果使用`Object`作为`HashMap`的key,需要重写该类的`equals()`和`hashCode()`方法。 #...