1. package com.dingxin.entrance
  2.  
  3. import java.text.SimpleDateFormat
  4. import java.util.{Calendar, Date}
  5.  
  6. /**
  7. * Created by zhen on 2019/1/16.
  8. */
  9. object SimpleDateFormatTest {
  10. def main(args: Array[String]) {
  11. val now: Date = new Date()
  12. val cal = Calendar.getInstance()
  13. val cbzq = "3"
  14. val result = if(cbzq == "1"){ //当年1月至当年12月
  15. val dateFormat: SimpleDateFormat = new SimpleDateFormat("yyyy-01-01")
  16. val begin = dateFormat.format(now)
  17.  
  18. cal.add(Calendar.YEAR,1)
  19. val end = dateFormat.format(cal.getTime)
  20.  
  21. begin.toString +"_"+end.toString
  22. }else if(cbzq == "2"){ //上年12月至当年12月
  23. val dateFormat: SimpleDateFormat = new SimpleDateFormat("yyyy-12-01")
  24. val end = dateFormat.format(now)
  25.  
  26. cal.add(Calendar.YEAR,-1)
  27. val begin = dateFormat.format(cal.getTime)
  28.  
  29. begin.toString +"_"+end.toString
  30. }else if(cbzq == "3") {//上年11月至当年11月
  31. val dateFormat: SimpleDateFormat = new SimpleDateFormat("yyyy-11-01")
  32. val end = dateFormat.format(now)
  33.  
  34. cal.add(Calendar.YEAR,-1)
  35. val begin = dateFormat.format(cal.getTime)
  36.  
  37. begin.toString +"_"+end.toString
  38. }else{// 异常
  39. ""
  40. }
  41. println(result)
  42. // 根据字符串时间求时间差(天)
  43. val dateFormat: SimpleDateFormat = new SimpleDateFormat("yyyy-MM-dd")
  44. val begin = dateFormat.parse("2019-11-3").getTime
  45. val end = dateFormat.parse("2019-12-27").getTime
  46. println((end - begin) / (1000 * 60 * 60 * 24))
  47. }
  48. }
  1. // 计算当前年份的总天数
  2. val nowCalendar = Calendar.getInstance()
  3. val nowDateFormat : SimpleDateFormat = new SimpleDateFormat("yyyy-12-31")
  4. val nowEnd = nowDateFormat.parse(nowDateFormat.format(nowCalendar.getTime)).getTime
  5. nowCalendar.add(Calendar.YEAR, -1)
  6. val nowBegin = nowDateFormat.parse(nowDateFormat.format(nowCalendar.getTime)).getTime
  7.  
  8. println((nowEnd - nowBegin) / (1000 * 60 * 60 * 24))

结果1:

结果2:

Scala之Calendar,SimpleDateFormat简单用法的更多相关文章

  1. Java Calendar类简单用法

    我的技术博客经常被流氓网站恶意爬取转载.请移步原文:http://www.cnblogs.com/hamhog/p/3832307.html,享受整齐的排版.有效的链接.正确的代码缩进.更好的阅读体验 ...

  2. day319 1、正则表达式的定义及使用 2、Date类的用法 3、Calendar类的用法

    1.正则表达式的定义及使用2.Date类的用法3.Calendar类的用法 一.正则表达式 ###01正则表达式的概念和作用* A: 正则表达式的概念和作用* a: 正则表达式的概述* 正则表达式也是 ...

  3. Calendar类经常用法 日期间的转换 set方法有巨坑

           今天发现项目的工具类方法有个bug,并且还能迷惑你的bug,刚開始也是非常迷惑,由于这个bug之前出现过,可是过了两天就自己好了.今天又出现了.哦对,今天是 2017年3月31日,之 ...

  4. java成神之——date和calendar日期的用法

    date和calendar日期的用法 util的data转换成sql的data 创建Date对象 格式化 Instant ChronoUnit LocalTime LocalDate LocalDat ...

  5. CATransition(os开发之画面切换) 的简单用法

    CATransition 的简单用法 //引进CATransition 时要添加包“QuartzCore.framework”,然后引进“#import <QuartzCore/QuartzCo ...

  6. jquery.validate.js 表单验证简单用法

    引入jquery.validate.js插件以及Jquery,在最后加上这个插件的方法名来引用.$('form').validate(); <!DOCTYPE html PUBLIC " ...

  7. NSCharacterSet 简单用法

    NSCharacterSet 简单用法 NSCharacterSet其实是许多字符或者数字或者符号的组合,在网络处理的时候会用到 NSMutableCharacterSet *base = [NSMu ...

  8. [转]Valgrind简单用法

    [转]Valgrind简单用法 http://www.cnblogs.com/sunyubo/archive/2010/05/05/2282170.html Valgrind的主要作者Julian S ...

  9. Oracle的substr函数简单用法

    substr(字符串,截取开始位置,截取长度) //返回截取的字 substr('Hello World',0,1) //返回结果为 'H'  *从字符串第一个字符开始截取长度为1的字符串 subst ...

随机推荐

  1. mysql 开发进阶篇系列 55 权限与安全(安全事项 )

    一. 操作系统层面安全 对于数据库来说,安全很重要,本章将从操作系统和数据库两个层面对mysql的安全问题进行了解. 1. 严格控制操作系统账号和权限 在数据库服务器上要严格控制操作系统的账号和权限, ...

  2. 【EF6学习笔记】(九)异步处理和存储过程

    本篇原文:Async and Stored Procedures 为何要采用异步? 一个Web服务器肯定有可用线程的限制,那么在一些访问量特别大的情况下,线程肯定会消耗完:这个时候服务器肯定处理不了请 ...

  3. leetcode — spiral-matrix

    import java.util.Arrays; /** * Source : https://oj.leetcode.com/problems/spiral-matrix/ * * Created ...

  4. Java——代码块

    前言 在程序编写之中可以直接使用{...}定义的一段语句就是代码块.根据代码块的位置以及关键字的不同可以分为4种:普通代码块.构造块.静态块以及同步代码块(多线程相关).下面将先介绍前3种以及Java ...

  5. PyInstaller 打包 python程序成exe

    pychaim下PyInstaller 打包 python程序 主题是使用PyInstaller 打包python时遇到一些问题以及解决方案,其中将要打包的程序是用tensorflow做的LSTM算法 ...

  6. python元组类型

    元组类型简介 使用括号包围的数据结构是元组(tuple).例如: >>> (1,2,3) (1, 2, 3) >>> T = (1,2,3,) >>&g ...

  7. spark之JDBC开发(实战)

    一.概述 Spark Core.Spark-SQL与Spark-Streaming都是相同的,编写好之后打成jar包使用spark-submit命令提交到集群运行应用$SPARK_HOME/bin#. ...

  8. 特征脸是怎么提取的之主成分分析法PCA

    机器学习笔记 多项式回归这一篇中,我们讲到了如何构造新的特征,相当于对样本数据进行升维. 那么相应的,我们肯定有数据的降维.那么现在思考两个问题 为什么需要降维 为什么可以降维 第一个问题很好理解,假 ...

  9. C# Redis安装 使用教程

    前言:lz自打工作以来第一次遇到电脑问题需要重装系统,全盘格式化.打击是沉痛的.特别伤.  然后需要重新在本地部署 redis.这是写这篇博客的原因.希望对大家有所帮助,安装资源和引用DLL可以引用 ...

  10. 扩展RBAC用户角色权限设计方案(转载)

    扩展RBAC用户角色权限设计方案  来源:https://www.cnblogs.com/zwq194/archive/2011/03/07/1974821.html https://blog.csd ...