以下实例演示了如何使用 Date 类及 SimpleDateFormat 类的 format(date) 方法来输出当前时间:
SimpleDateFormat sdf = new SimpleDateFormat();// 格式化时间 sdf.applyPattern("yyyy-MM-dd HH:mm:ss ");// a为am/pm的标记 Date date = new Date();// 获取当前时间 System.out.println("现在时间:" + sdf.format(date)); // 输出已经格式化的现在时间(24小时制)
以上代码运行输出结果为:现在时间:2021-07-08 16:56:28
//创建日期转换对象 (选择自己要进行比较的时间格式)
//HH:mm:ss为时分秒,年月日为yyyy-MM-dd
DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); try { Date dt1 = df.parse("2021-07-08 15:00:00");//将字符串转换为date类型 Date dt2 = df.parse("2021-07-08 17:00:00");
//比较时间大小,如果dt1大于dt2则输出yes,否则输出no if(dt1.getTime()>dt2.getTime()){ System.out.println("yes"); }else{
System.out.println("no");
} } catch (ParseException e) { // TODO Auto-generated catch block e.printStackTrace(); }
以上代码运行输出结果为:no
时间格式:yyyy-MM-dd HH:mm:ss
时间的正则表达式:
String timeRegex = "^((([0-9]{3}[1-9]|[0-9]{2}[1-9][0-9]{1}|[0-9]{1}[1-9][0-9]{2}|[1-9][0-9]{3})-(((0[13578]|1[02])-(0[1-9]|[12][0-9]|3[01]))|((0[469]|11)-(0[1-9]|[12][0-9]|30))|(02-(0[1-9]|[1][0-9]|2[0-8]))))|((([0-9]{2})(0[48]|[2468][048]|[13579][26])|((0[48]|[2468][048]|[3579][26])00))-02-29))\\s+([0-1]?[0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9])$"; boolean b_1 = Pattern.matches(timeRegex, "2021-07-23 16:37:00"); System.out.println( b_1);
输出结果为: true
时间格式:yyyy-MM-dd
时间的正则表达式:
String timeRegex = "^[0-9]{4}-(((0[13578]|(10|12))-(0[1-9]|[1-2][0-9]|3[0-1]))|(02-(0[1-9]|[1-2][0-9]))|((0[469]|11)-(0[1-9]|[1-2][0-9]|30)))$"; boolean b_2 = Pattern.matches(timeRegex, "2021-07-27"); System.out.println( b_2);
输出结果为: true
时间格式:HH:mm:00
时间的正则表达式:
String timeRegex = "^(([1-9]{1})|([0-1][0-9])|([1-2][0-3])):([0-5][0-9]):([0-0][0-0])$"; boolean b_3 = Pattern.matches(timeRegex, "09:59:00"); System.out.println( b_3);
输出结果为: true