JAVA中String如何转为Map

Python014

JAVA中String如何转为Map,第1张

可以直接使用timestamp.valueof将string转换为timestamp,参考代码如下:

string

tsstr

=

“2011-05-09

11:49:45″

try

{

timestamp

ts

=

timestamp.valueof(tsstr)

system.out.println(ts)

}

catch

(exception

e)

{

e.printstacktrace()

}

注:string的类型必须形如:

yyyy-mm-dd

hh:mm:ss[.f...]

这样的格式,中括号表示可选,否则报错。如果string为其他格式,可考虑重新解析下字符串后再转换。

我们需要先把json字符串转化为net.sf.json.JSONObject对象,java中这样就可以完成json字符串到Map的转换了。

1.将数组转换为JSON:String[] arr = {"asd","dfgd","asd","234"}JSONArray jsonarray = JSONArray.fromObject(arr)System.out.println(jsonarray)

2.对象转换成JSON:UserInfo user = new UserInfo(1001,"张三")JSONArray jsonArray = JSONArray.fromObject(user)System.out.println( jsonArray )

3.把Map转换成json, 要使用jsonObject对象:Map<String, Object>map = new HashMap<String, Object>()map.put("userId", 1001)map.put("userName", "张三")map.put("userSex", "男")JSONObject jsonObject = JSONObject.fromObject(map)System.out.println(jsonObject)

4.把List转换成JSON数据:List<UserInfo>list = new ArrayList<UserInfo>()UserInfo user = new UserInfo(1001, "张三")list.add(user)list.add(user)list.add(user)JSONArray jsonArray = JSONArray.fromObject(list)System.out.println(jsonArray)

5.

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<String,String> map = new HashMap<String,String>()

  for(int i = 0 i<stepOne.length i++)

  {

   //第二次分割,分隔符'_'

   String[] stepTwo = stepOne[i].split("_")

   //向HashMap中添加

   if(map.get(stepTwo[0])==null)

    map.put(stepTwo[0], stepTwo[1])

   else

    map.put(stepTwo[0], stepTwo[1]+","+map.get(stepTwo[0]))

  }

  for(Map.Entry<String, String>entry : map.entrySet())

  {

   //按格式输出

   System.out.println("key={"+entry.getKey()+"} value={"+entry.getValue()+"}")

  }

 }

}