最快的字符串格式转换

时间:2015-03-31 16:45:38

标签: java string performance date formatting

我有以下字符串:20140420000001 我想将其格式化为:2014-04-20+00:00:01

在Java中以最快的方式执行此操作是什么?

比这还要快吗?

String dt = "20140420000001";
System.out.println(dt.substring(0, 4)+"-"+dt.substring(4, 6)+"-"+dt.substring(6, 8)+"+"+dt.substring(8, 10)+":"+dt.substring(10, 12)+":"+dt.substring(12, 14));

1 个答案:

答案 0 :(得分:2)

    return new String(new char[] {
            s.charAt(0), s.charAt(1), s.charAt(2), s.charAt(3),
            '-', s.charAt(4), s.charAt(5),
            '-', s.charAt(6), s.charAt(7),
            '+', s.charAt(8), s.charAt(9),
            ':', s.charAt(10), s.charAt(11),
            ':', s.charAt(12), s.charAt(13)
    });

不太漂亮,但纯Java几乎没有什么比这更快。