jodatime 时间比较
public ArrayList<CalcPeriod> getCalcPeriods() {
DateTime now = DateTime.now();
DateTime.Property year = now.year();
DateTimeFormatter yyyyMMdd = DateTimeFormat.forPattern("yyyyMMdd");
DateTime season1 = DateTime.parse(year.get() + Constant.SEASON1,yyyyMMdd);
DateTime season2 = DateTime.parse(year.get() + Constant.SEASON2,yyyyMMdd);
DateTime season3 = DateTime.parse(year.get() + Constant.SEASON3,yyyyMMdd);
DateTime season4 = DateTime.parse(year.get() + Constant.SEASON4,yyyyMMdd);
//2.1 今年
ArrayList<CalcPeriod> currentYearList = new ArrayList<>();
if (now.isBefore(season1)){
}else if (now.isAfter(season1) && now.isBefore(season2)){
currentYearList.add(new CalcPeriod(year.get(),"1"));
}else if (now.isAfter(season2) && now.isBefore(season3)) {
currentYearList.add(new CalcPeriod(year.get(), "2"));
}else if (now.isAfter(season3) && now.isBefore(season4)) {
currentYearList.add(new CalcPeriod(year.get(), "3"));
}
//2.2 去年
ArrayList<CalcPeriod> beforeCurrentYearList = new ArrayList<>();
for (int i = 2012; i <= year.get() - 1; i++){
for (int j = 1; j <= 4; j++){
beforeCurrentYearList.add(new CalcPeriod(i, String.valueOf(j)));
}
}
ArrayList<CalcPeriod> totalList = new ArrayList<>();
totalList.addAll(currentYearList);
totalList.addAll(beforeCurrentYearList);
return totalList;
}
public class CalcPeriod
{
private int year;
private String period;
public CalcPeriod(int year, String period) {
this.year = year;
this.period = period;
}
public CalcPeriod() {
}
public int getYear()
{
return this.year;
}
public void setYear(int year) {
this.year = year;
}
}
public static final String SEASON1 = "0331";
public static final String SEASON2 = "0630";
public static final String SEASON3 = "0930";
public static final String SEASON4 = "1231";
jodatime 时间比较的更多相关文章
- joda-time时间操作组件
今天看到了学习到了一个不错的操作时间的jar包,很方便的,以后操作时间运算就可以直接使用jar包中的方法了,再也不用自己写操作时间的方法了.懒的不行不行的 <!-- 时间操作组件 --> ...
- JAVA8学习——新的时间日期API&Java8总结
JAVA8-时间日期API java8之前用过的时间日期类. Date Calendar SimpleDateFormat 有很多致命的问题. 1.没有时区概念 2.计算麻烦,实现困难 3.类是可变的 ...
- 阿里云服务器+ftp文件操作+基于Centos7的vsftpd配置
路径问题:一定要注意此位置是否需要加入"/" 文件上传方式:被动模式 vsftp完整配置: # # The default compiled in settings are fai ...
- java 工具类使用
BigDecimalUtil 金额计算工具类 import java.math.BigDecimal; public class BigDecimalUtil { private BigDecimal ...
- 【JavaWeb项目】一个众筹网站的开发(一)架构搭建
本项目是@尚硅谷相关视频的记录. 本项目使用Maven构建,工程架构如下图所示: 一.公司的公共父工程和工具类包 1.父工程 每个公司都有自己的父工程 父工程作用:对公司使用的jar包进行统一管理,别 ...
- java开源时间/日期库Joda-Time
任何企业应用程序都需要处理时间问题.应用程序需要知道当前的时间点和下一个时间点,有时它们还必须计算这两个时间点之间的路径.使用 JDK 完成这项任务将非常痛苦和繁琐.现在来看看 Joda Time,一 ...
- 【转】Java时间日期包 JodaTime
maven: http://mvnrepository.com/artifact/joda-time/joda-time 1, 获取每天的零点 DateTime dt=new DateTime().w ...
- java Joda-Time 对日期、时间操作
任何企业应用程序都需要处理时间问题.应用程序需要知道当前的时间点和下一个时间点,有时它们还必须计算这两个时间点之间的路径.使用 JDK 完成这项任务将非常痛苦和繁琐.现在来看看 Joda Time,一 ...
- java时间库Joda-Time
虽然在java8里面有内置的最新的时间库,但是在java8之前的版本所有的时间操作都得自己写,未免有些繁琐,如果我们不自己封装的话可以用Joda-Time这个时间库,下面写下这个库的具体用法. git ...
随机推荐
- mui底部导航栏切换分页
使用Hbuilder的mui框架开发移动端非常便利.高效: 底部导航栏切换功能也是移动APP开发中必须实现的: 引入mui文件.下面会用到jquery,同时引进 <link href=" ...
- NMEA0183
NMEA简介 NMEA是全国海洋电子协会(National Marine Electronics Association):国际海上电子协会(National Marine Electronics A ...
- NGUI_Texture
六.UITexture:在屏幕上显示一张图片,和Sprite类似,但是UITexture会单独消耗一个DrawCall去渲染, 会单独加载进内存,会增加内存的开销. 1.使用UITexture时要遵循 ...
- poj-1012-约瑟夫问题
Description The Joseph's problem is notoriously known. For those who are not familiar with the origi ...
- ASP.NET MVC编程——缓存
Web缓存分为服务端缓存和客户端缓存. 1 服务端缓存 1.1请求域内的缓存:HttpContext.Items 类型: HttpContext.Items的类型为IDictionary,且键和值都是 ...
- 大数据 --> 一致性Hash算法
一致性Hash算法 一致性Hash算法(Consistent Hash)
- Algorithm --> 邮票连续组合问题
邮票组合问题 有四种面值的邮票很多枚,面值分别为1,4,12,21,取五张,求取出这些邮票的最大连续组合值 代码: #include <stdio.h> #include <stri ...
- 02-Python的下载和安装_Python编程之路
原文发布在特克斯博客www.susmote.com 之前给大家讲了关于python的背景知识,还有Python的优点和缺点,相信通过之前的介绍很多人已经清楚自己到底要不要选择学习Python,如果已经 ...
- JAVA字符串缓存器全部方法功能及其作用
不知道干嘛的 serialVersionUID 构造一个没有字符的字符串缓冲区,初始容量为16个字符. StringBuffer() 构造一个没有字符的字符串缓冲区和指定的初始容量. StringBu ...
- js面向对象的理解
ECMAScript 有两种开发模式:1.函数式(过程化),2.面向对象(OOP).面向对象的语言有一个标志,那就是类的概念,而通过类可以创建任意多个具有相同属性和方法的对象.但是,ECMAScrip ...