Map转成String,String 转换成Map

一、使用场景

把一个map转换成json字符串后存放在Redis中,然后在redis中取出json字符串,再把字符串转变成原来的Map

二、具体实现

1.1 Map转成String

这里使用是阿里巴巴fastjson

	Map<String, Object> reportData = dssDashboardService.getReportData(yearMonth, DssDef.DssDashboardType.MONTH_INDEX.getCode());
		String jsonString = JSON.toJSONString(reportData);

1.2 String转成Map

	Object object = redisTemplate.opsForValue().get(key);
	reportData = JSON.parseObject((String) object, Map.class);
  • 9
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
### 回答1: 在Java中,将一个字符串换为Map可以使用以下步骤: 1. 声明一个空的Map对象,例如HashMap。 2. 使用split()函数将字符串按照指定的分隔符分割成键值对数组。 3. 循环遍历键值对数组,将每一对键值对放入Map中。其中,键值对的分隔符可以使用“=”或“:”等常用符号。 以下是一个示例代码: ``` String str = "key1=value1,key2=value2,key3=value3"; Map<String, String> map = new HashMap<>(); String[] pairs = str.split(","); for (String pair : pairs) { String[] keyValue = pair.split("="); map.put(keyValue[0], keyValue[1]); } ``` 以上代码将字符串str换为Map对象map,其中键值对的分隔符为“=”。若想更改分隔符,只需将split()函数的参数改为对应符号即可。 ### 回答2: 在Java中,可以通过使用split()方法将一个字符串拆分成字符串数组,然后将字符串数组换为Map。split()方法可以使用指定的分隔符拆分字符串,并返回一个包含拆分后的子字符串的数组。 首先,我们需要定义一个字符串,其中包含键值对(key-value pairs),它们之间使用指定的分隔符进行分隔。例如,我们可以使用逗号作为分隔符,将字符串分成多个键值对。 然后,我们将使用String.split()方法将字符串拆分成字符串数组。在该方法中,我们需要将分隔符作为参数传递。 接下来,我们需要创建一个空的Map对象,在循环中,我们需要从数组中提取所有的键值对,将它们分别放入Map中。在循环中,我们需要将每个键值对以'='为分隔符分开,并使用Map.put()方法将其添加到Map中。 最后,我们可以使用Map.get()方法获取Map中的值,并在控制台中打印它。 下面是一个示例代码,可以将string转换成map: ``` public static Map<String, String> convertStringToMap(String str) { Map<String, String> map = new HashMap<>(); String[] keyValuePairs = str.split(","); for (String pair : keyValuePairs) { String[] entry = pair.split("="); map.put(entry[0].trim(), entry[1].trim()); } return map; } public static void main(String[] args) { String myString = "name=John, age=25, city=New York"; Map<String, String> myMap = convertStringToMap(myString); System.out.println(myMap.get("name")); // prints "John" System.out.println(myMap.get("age")); // prints "25" System.out.println(myMap.get("city")); // prints "New York" } ``` 在上面的代码中,我们将字符串“name=John, age=25, city=New York”转换成了一个Map对象,并在控制台中打印出了Map中的值。 ### 回答3: 在Python中,我们可以通过使用split()方法将一个字符串分割成一系列字符,并将它们存储到一个列表中。然后,我们可以通过将列表转换成字典,将字符串转换成字典。 例如,如果我们有一个字符串“key1=value1;key2=value2;key3=value3”,我们可以通过使用split()方法按照分号来分割它,并将得到的列表存储到一个变量中,如下所示: ``` string = 'key1=value1;key2=value2;key3=value3' lst = string.split(';') ``` 现在,lst变量将包含一个列表,其中包含三个字符串元素:“key1=value1”,“key2=value2”和“key3=value3”。 接下来,我们需要使用另一个循环来遍历列表,使用split()方法按照等号分割每个元素,并将结果存储到字典中。例如,我们可以使用下面的代码来完成这个换过程: ``` string = 'key1=value1;key2=value2;key3=value3' lst = string.split(';') my_dict = {} for item in lst: key, value = item.split('=') my_dict[key] = value print(my_dict) ``` 这将在屏幕上打印出一个字典,其中包含三个键值对(key1:value1,key2:value2和key3:value3)。我们可以像使用任何其他字典一样,使用它们来执行所需的操作。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

努力发光的程序员

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值