public static void main(String[] args) {
List<Profile> profileList = new ArrayList<Profile>(100000);
for (int i = 0; i < 100000; i++) {
Profile profile = new Profile();
profile.setUserId(i);
profile.setUserName("zystest1");
profileList.add(profile);
}
long time1 = new Date().getTime();
Map<Long, Profile> pMap = new HashMap<Long, Profile>(100000);
for (Profile profile : profileList) {
pMap.put(profile.getUserId(), profile);
}
long time2 = new Date().getTime();
System.out.println((time2 - time1));
}
10W个数据,消耗时间为88ms
public static void main(String[] args) {
List<Profile> profileList = new ArrayList<Profile>(100000);
for (int i = 0; i < 100000; i++) {
Profile profile = new Profile();
profile.setUserId(i);
profile.setUserName("zystest1");
profileList.add(profile);
}
long time1 = new Date().getTime();
Map<Long, Profile> pMap = new HashMap<Long, Profile>(100000);
try {
pMap = Test.ListToMap(profileList, "getUserId", Profile.class,
100000);
} catch (Exception e) {
e.printStackTrace();
}
long time2 = new Date().getTime();
System.out.println((time2 - time1));
}
public static <T> Map<Long, T> ListToMap(List<T> objects,
String methodName, Class class1, int initSize) {
Map<Long, T> pMap = new HashMap<Long, T>(initSize);
try {
Method method = class1.getMethod(methodName);
for (T t : objects) {
Long long1 = (Long) method.invoke(t);
pMap.put(long1, t);
}
} catch (Exception e) {
e.printStackTrace();
}
return pMap;
}
使用反射机制做listToMap,耗时98ms
总体来说,只要不循环定义method,效率还是比较高的
分享到:
相关推荐
ResultSet 转为listmap
javascript 模拟 java中的 List,Map js文件为 js/utils.js IE6.0 测试通过 <br>List: add(var obj) //添加一个元素 remove(var index) //删除一个元素 get(var index) //获取一个元素 remove...
java利用反射,将Object和Map进行互相转换,list和map互相转换 java Map和Object转换,list和map转换
主要介绍了在Java 8中将List转换为Map对象方法,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
List转换为List<Map>, List转换为List<Object> list转化为 JsonArray ,list转换JsonArray
实现list不同泛型之间实体的互转,基于java8新特性+反射机制实现list不同实体类互转,将jdk8的流处理集合互转抽出来成一个工具类,实现lsit
一般使用springjdbc、hibernate的sql查询,库获取到的数据都是List<Map, Object>>结果集,如果我们要转化为JavaBean,则需要做一系列的map.get(),然后obj.set()。 此工程中就是解决List<Map, Object>>转化为...
将list<Map>转换成JavaBean的工具类
// java中对象容器主要有Set,List和Map三个接口类。 // 迭代器(Iterator)模式,又叫做游标(Cursor)模式。 // GOF给出的定义为:提供一种方法访问一个容器(container)对象中的各个元素, // 而又不需暴露该...
spring,cxf,restful发布webservice传递复杂对象,例如List,Map,List<Map>
Java中 List《map》把里面map中某个key相同记录的其他key 的 value 合并 Java中 List《map》把里面map中某个key相同记录的其他key 的 value 合并
list转map的测试类,用到jdk1.8的新特性,感觉用起来很方便
List集合转换成String,String转List,Map转String,String转Map等 集合与字符串相互转换,可以自己扩展源码,带有注释
使用两个list<Map,String>> 求交集和补集。
Java递归将List转为树形结构 博客地址:https://blog.csdn.net/weixin_38500202/article/details/110456363
List<map>,List<Map, Object>>,多字段组合排序。提供一个简易的思路,如果需要进行参考。
java转换xml、list、map和json
前后台传送list及map,包含了传json时所需要的包及相关内容
<P>map集合转化成xml字符串</P> <P>xml字符串转化成map集合 <P>list集合转化成xml字符串 <P>xml字符串转化成list集合</P>
此java类实现了对数据表的分类递归树的实现,为本人倾力之作,后期,会发布js版,敬请期待!