JAVA中String如何转为Map

Python016

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为其他格式,可考虑重新解析下字符串后再转换。

import java.util.ArrayList

import java.util.HashMap

import java.util.List

import java.util.Map

public class TestArray {

    public static void main(String[] args) {

        /**

         * 初始化一个 List,存放 String 数组,数组的第一位是 amount,第二位是 year,第三位是 month,第四位是 day 。

         */

        List<String[]> arr = new ArrayList<String[]>()

        arr.add(new String[] { "89", "2015", "06", "21" })

        arr.add(new String[] { "89", "2015", "06", "22" })

        arr.add(new String[] { "89", "2015", "06", "23" })

        /**

         * 创建一个 StringBuffer 临时存放 map.key 。

         */

        StringBuffer key = new StringBuffer()

        /**

         * 建一个 map 对象,

         */

        Map<String, String> map = new HashMap<String, String>()

        for (int i = 0 i < arr.size() i++) {

            // 获取 List 中的 String 数组元素。

            String[] element = arr.get(i)

            // 数组的第二位、第三位、第四位拼接成 key 。

            key.append(element[1]).append(element[2]).append(element[3])

            // 数组的第一位拼接成 value,初始化 map。

            map.put(key.toString(), element[0])

            // 临时的 StringBuffer 清空内容以便下次循环继续使用。

            key.delete(0, key.length())

        }

        // 打印 map

        System.out.println(map.toString())

    }

}

输出效果: