最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
Java中字符串格式的日期比较详解
时间:2016-09-03 编辑:简简单单 来源:一聚教程网
在实际开发中,有的小伙伴会遇到一些日期处理的问题,最比如日期的比较。有时候日期并不是Date类,而是以字符串来表示的,like this : 1994-09-11,这种日期是没办法直接比较的,这就需要我们将它先格式化了,这里就用到了DateFormat类了。
先上代码:
代码如下 | 复制代码 |
public boolean compareDate(String startDate, String endDate) { SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); try { Date sDate = sdf.parse(startDate); Date eDate = sdf.parse(endDate); if (eDate.before(sDate)) { return false; } else { return true; } } catch (ParseException e) { e.printStackTrace(); } return false; } |
我们这里并没有用到DateFormat类,用的是SimpleDateFormat类,它是DateFormat类的一个子类,这个先不说。
看代码,先构造一个format对象sdf,然后用用sdf将输入的两个字符串格式化成日期,其格式化的方式由你传入的字符串决定,此处是yyyy-MM-dd,因为我要传入的字符串就是1994-09-11这种格式的。然后用sdf的before方法来比较两个日期的大小,是不是很方便呢?
在实际中用的最多的还是SimpleDateFormat类,作为DateFormat的子类, SimpleDateFormat类显然比DateFormat拥有更多的功能,他还能将标准日期格式化成你想要的日期格式,下面是示例代码:
代码如下 | 复制代码 |
public String formatDate(Date date){ SimpleDateFormat formater = new SimpleDateFormat("yyyy年MM月dd日"); //通过构造方法设置模板 String dateString = formater.format(date); formater.applyPattern("yyyy.MM.dd");//重新设置格式化模板 dateString = formater.format(date); return dateString; } |
例子
代码如下 | 复制代码 |
public class Timetest { |
当然我们可以先尝试来检查判断一个字符串是不是一个合法的日期格式
例子,
代码如下 | 复制代码 |
public static boolean isValidDate(String str) { |
相关文章
- SpringBoot测试配置属性与web启动环境解析 10-24
- vue中将el-switch值true、false改为number类型的1和0解析 10-24
- Vue中的路由配置项meta使用解读 10-24
- SpringBoot自定义bean绑定解析 10-24
- SpringBoot常用计量与bean属性校验和进制数据转换规则解析 10-24
- 工厂方法在Spring框架中的运用介绍 10-24