《java多线程编程核心技术》----simpleDateFormat非线程安全
类simpleDateFormat主要负责日期的转换和格式化,但在多线程的环境中,使用此内容容易造成数据转换以及处理的不准确, 因为simpleDateFormat类并不是线程安全的。 public class MyThread extends Thread { private SimpleDateFormat sdf; private String dateString; public MyThread(SimpleDateFormat sdf, String dateString) { super(); this.sdf = sdf; this.dateString = dateString; } @Override public void run() { try { // dateString 传入的日期字符串 Date dateRef = sdf.parse(dateString); // newDateString 根据传入的字符串转换成日期,然后,在转换后的字符串 String newDateString= sdf.format(dateRef).toString(); if(!newDateString.equals(dateString)){ System.out.println("ThreadName="+this.getName() +"报错了 日期字符串:"