1. 首页 > 笙耀百科 >

java对象转map java对象转map最快的方法

java 中object对象与map可以相互强转吗?

可以强制转换。

java对象转map java对象转map最快的方法java对象转map java对象转map最快的方法


但是如果一个对象不是Map类型,你给转成Map的话,取里面的数据会报异常。

Map类型转成Object的没有问题。

Object类是所有类的父类嘛。方法也都支持。

肯定不可以噻。。。 好好理解面向对象吧 一个map就是一个 对象

map转为object没问题,object转为map有可能出问题。

java在后台如何将前台传过来的json格式数据转换为map?

你找一个解析json的包,Gson 或者 fastjson ,把你收到的那个字符串 转换为 JsonObject对象,然后你用Map的操作方式来操作JsonObject就行了。顺便说下,json的格式比较复杂,它比Map的格式要复杂些,所以,你不可能把json完全转换为Map,如果格式是按你说的{"a":0,"b":1,"c":1,"d":1} 格式是固定的话,那你自己把JsonObject转换成Map就可以了

你是想转换成map再取值吗?还是有什么别的需求?如果是想根据键取值可以这样取值

//转换为json键值对象

JSONObject jsonObject = new JSONObject().fromObject(result);

//根据json的键获得对应的值

String value= jsonObject.getString(key);

希望能帮到您。

JSON数据,在后台接收到时,以JSONObject为例;

JSONObject js_obj = JSONObject.parse(接收到前台传递JSON的字符串);

转换为json对象,map 我们都清楚,其实是以键队的形式存储的,

所以,我们在已知json属性的前提下将js_obj对象值取出,赋值给新的map对象即可。

搞不定你现在是JSON还为什么要转成MAP 你在这里不就可以直接获取数据了吗

如:

function(data){//data是你的{"a":0,"b":1,"c":1,"d":1}

这里直接data.a就可以获取0了 data.b就可以获取1了

}

1.示例如下

public static void main(String[] args) {

String detail="{\"result\":0,\"msg\":\"成功\",\"info\":{\"saleUnit\":\"\",\"weight\":\"0.04\"}}";

JSONObject json=new JSONObject(detail);

Map map=new HashMap();

Iterator it = json.keys();

while (it.hasNext()) {

String key = (String) it.next();

Object value = json.get(key);

map.put(key, value);

}System.out.println(map.get("info"));

}2.如何是maven项目的在pom.xml加入

dependency>

org.json

json

20160810

依赖.如不是自行下载jar包

import java.util.*;

import net.sf.json.JSONObject;

public class Json2Map{

public static void main(String argv[]){

String s="{\"a\":0,\"b\":1,\"c\":1,\"d\":1}";

JSONObject jsonObject = JSONObject.fromObject(s);

Map> clazzMap = new HashMap>();

clazzMap.put("result", Integer.class);

// clazzMap.put("result", String[].class);

// clazzMap.put("Student1", Student.class);

// clazzMap.put("Student2", Student.class);

Map mapBean = (Map) JSONObject.toBean(jsonObject, Map.class,clazzMap);

Set set = mapBean.keySet();

//遍历Json数据

Iterator iter = set.iterator();

while (iter.hasNext()) {

String key = iter.next();

System.out.print(key + " _> " + mapBean.get(key).toString()+"\t");

}}

}

代码大概是这样的吧,我手写的,你可以看看思路:

JSONObject jo = new JSONObject(jsonStr);

Map map = new HashMap();

map.put("a", jo.get("a"));

map.put("b", jo.get("b"));

......可能有错的地方

先用json相关的jar,把json格式的字符串转换成JSON对象 将JSON对象转换成Map对象,这个看下API有什么方法都可以猜的出来了

用SpringMVC的话直接在controller里面的方法里面使用Map即可

Java中 如何把Object类型强转成Map类型

Object obj = new Object();

@SuppressWarnings("unused")

Map map = (Map)obj;

Object o1 = new Object();

Map map = (Map)o1;

public Map hgetall(String key) {

Map entries = mStringRedisTemplate.opsForHash().entries(key);

return new HashMap(entries);

}

java中怎么list 转成 map?

可以转换的,你用循环把list中的数据读出来,Iterator it=list().iterator();

while(it.hasNext){

对象类型 XX=(对象类型)it.next();

}然后再把对象放到map里面就行了.

Map map = new HashMap();

下面是我常用的方法

将key转为List

List keyList = new ArrayList(map.keySet());

将value转为list

list中的对象是一个值 而map中的是一对数值 !!!!

转了之后 不行吧

java中怎么将实体转为map

import java.beans.BeanInfo;

import java.beans.IntrospectionException;

import java.beans.Introspector;

import java.beans.PropertyDescriptor;

import java.lang.reflect.InvocationTargetException;

import java.lang.reflect.Method;

import java.util.HashMap;

import java.util.Map;

/**

* java实体类转换为map

* @author vic

**/

public class JavaBeanUtil {

public static Map convertBeanToMap(Object bean) throws IntrospectionException,IllegalAccessException, InvocationTargetException {

Class type = bean.getClass();

Map returnMap = new HashMap();

BeanInfo beanInfo = Introspector.getBeanInfo(type);

PropertyDescriptor[] propertyDescriptors = beanInfo.getPropertyDescriptors();

for (int i = 0; i < propertyDescriptors.length; i++) {

PropertyDescriptor descriptor = propertyDescriptors[i];

String propertyName = descriptor.getName();

if (!propertyName.equals("class")) {

Method readMethod = descriptor.getReadMethod();

Object result = readMethod.invoke(bean, new Object[0]);

if (result != null) {

returnMap.put(propertyName, result);

} else {

returnMap.put(propertyName, "");

}}

}return returnMap;

}}

Java中如何把字符串转换成map

首先,你先确认你的字符串是否是json格式的,如果是json格式,那你可以使用Gson.jar或json-lib-xx-jdk.jar两个包来自动解析解析。

使用Gson更简单些,只需要导入一个包就可以,但是他如果使用Object解析到int型的话或自动转成double型,需要定义一个准确的类来解析,不能直接使用Object。示例:

Gson gson = new Gson();

Map map = new HashMap();

map = gson.fromJson(str, map.getClass());使用json-lib包的话需要导入更多的包,需要额外导入commons-lang.jar、ezmorph-1.0.4.jar、commons-logging-1.1.1.jar、commons-collections.jar、commons-beanutils.jar这5个包。解析示例如下:

JSONObject jb = JSONObject.fromObject(str);

Map map = (Map)jb;如果你的字符串不是json格式,那你就需要自己使用split分割字符串,例如:

String str = "color:red|font:yahei|width:800|height:300";

String[] strs = str.split("\\|");

Map m = new HashMap();

for(String s:strs){

String[] ms = s.split(":");

m.put(ms[0], ms[1]);

}

一 先引入这些包二 把字符串的串的两个中括号

JSONObject jb = JSONObject.fromObject(jsondata);

Map map = (Map)jb;

System.out.println(map.get("DEVELOPER"));

import java.util.HashMap;import java.util.Map; public class StringToMap { /** * 功能已经实现,但是字符串格式不能改变 * @param args */ public static void main(String[] args) { String str = "A_test1,A_test2,B_test3,B_test4"; //第一次分割,分隔符 ',' String[] stepOne = str.split(","); Map map = new HashMap(); for(int i = 0; ientry : map.entrySet()) { //按格式输出 System.out.println("key={"+entry.getKey()+"} value={"+entry.getValue()+"}"); } }}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至836084111@qq.com 举报,一经查实,本站将立刻删除。

联系我们

工作日:9:30-18:30,节假日休息