当前位置: 代码迷 >> 综合 >> SimpleDateFormat 把玩
  详细解决方案

SimpleDateFormat 把玩

热度:59   发布时间:2024-01-13 18:55:26.0

这周比较忙没有尝试新东西,在多个项目中看到这样的警告:To get local formatting use getDateInstance(), getDateTimeInstance(), or getTimeInstance(), or use new SimpleDateFormat(String template, Locale locale) with for example Locale.US for ASCII dates. Issue: Using SimpleDateFormat directly without an explicit locale Id: SimpleDateFormat     Almost all callers should use getDateInstance(), 

简单来说就是建议使用getDateInstance()代替new;不敢在项目中乱来 ,忙里偷闲new了一个class进行体验,到底两种方式能不能达到相同的效果  ,首先说结果是不同的  ,如果getDateInstance()的效果能达到要求  就用getDateInstance()吧 ,如果能就new 自己设定样式这是代码  

package servlet;import java.text.SimpleDateFormat;
import java.util.Locale;
/*** 试验:关于SimpleDateFormat.getDateInstance().format(System.currentTimeMillis());代替new  的方案 *   s  2016-06-17 05:29s1 2016-6-17s2 2016-6-17 17:29:00* @author Administrator**/
public class TestDate {public static void main(String args[]) {Locale aLocale = Locale.getDefault();SimpleDateFormat s = new SimpleDateFormat("yyyy-MM-dd hh:mm");String date = s.format(System.currentTimeMillis());System.out.println("s  "+date);String s1 = SimpleDateFormat.getDateInstance().format(System.currentTimeMillis());String s2 = SimpleDateFormat.getDateTimeInstance().format(System.currentTimeMillis());System.out.println("s1 "+s1);System.out.println("s2 "+s2);}
}

这是打印结果

s  2016-06-17 05:29
s1 2016-6-17
s2 2016-6-17 17:29:00


  相关解决方案