scala时间处理
1、获取当前时间的年份、月份、天、小时等等
val nowDay=LocalDate.now().getDayOfMonth val nowDay=LocalTime.now().getHour
2、获取今天日期
def getNowDate():String={
var now:Date = new Date()
var dateFormat:SimpleDateFormat = new SimpleDateFormat("yyyy-MM-dd")
var hehe = dateFormat.format( now )
hehe
}
3、获取昨天的日期
def getYesterday():String={
var dateFormat:SimpleDateFormat = new SimpleDateFormat("yyyy-MM-dd")
var cal:Calendar=Calendar.getInstance()
cal.add(Calendar.DATE,-1)
var yesterday=dateFormat.format(cal.getTime())
yesterday
4、获取本周开始日期
def getNowWeekStart():String={
var period:String=""
var cal:Calendar =Calendar.getInstance();
var df:SimpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
cal.set(Calendar.DAY_OF_WEEK, Calendar.MONDAY)
//获取本周一的日期
period=df.format(cal.getTime())
period
}
5、获取本周末的时间
def getNowWeekEnd():String={
var period:String=""
var cal:Calendar =Calendar.getInstance();
var df:SimpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
cal.set(Calendar.DAY_OF_WEEK, Calendar.SUNDAY);//这种输出的是上个星期周日的日期,因为老外把周日当成第一天
cal.add(Calendar.WEEK_OF_YEAR, 1)// 增加一个星期,才是我们中国人的本周日的日期
period=df.format(cal.getTime())
period
}
6、本月的第一天
def getNowMonthStart():String={
var period:String=""
var cal:Calendar =Calendar.getInstance();
var df:SimpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
cal.set(Calendar.DATE, 1)
period=df.format(cal.getTime())//本月第一天
period
}
7、本月的最后一天
def getNowMonthEnd():String={
var period:String=""
var cal:Calendar =Calendar.getInstance();
var df:SimpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
cal.set(Calendar.DATE, 1)
cal.roll(Calendar.DATE,-1)
period=df.format(cal.getTime())//本月最后一天
period
}
8、将时间戳转化成日期
时间戳是秒数,需要乘以1000l转化成毫秒
def DateFormat(time:String):String={
var sdf:SimpleDateFormat = new SimpleDateFormat("yyyy-MM-dd")
var date:String = sdf.format(new Date((time.toLong*1000l)))
date
}
9、时间戳转化为时间,原理同上
def timeFormat(time:String):String={
var sdf:SimpleDateFormat = new SimpleDateFormat("HH:mm:ss")
var date:String = sdf.format(new Date((time.toLong*1000l)))
date
}
测试一下
def main(args: Array[String]) {
print("现在时间:"+Tool.getNowDate())
print("昨天时间:"+Tool.getYesterday())
print("本周开始"+Tool.getNowWeekStart())
print("本周结束"+Tool.getNowWeekEnd())
print("本月开始"+Tool.getNowMonthStart())
print("本月结束"+Tool.getNowMonthEnd())
print("\n")
print(Tool.timeFormat("1436457603"))
print(Tool.DateFormat("1436457603"))
}
10计算时间差
//核心工作时间,迟到早退等的的处理
def getCoreTime(start_time:String,end_Time:String)={
var df:SimpleDateFormat=new SimpleDateFormat("HH:mm:ss")
var begin:Date=df.parse(start_time)
var end:Date = df.parse(end_Time)
var between:Long=(end.getTime()-begin.getTime())/1000//转化成秒
var hour:Float=between.toFloat/3600
var decf:DecimalFormat=new DecimalFormat("#.00")
decf.format(hour)//格式化
}
scala时间处理的更多相关文章
- scala 时间格式转换(String、Long、Date)
1)scala 时间格式转换(String.Long.Date) 1.时间字符类型转Date类型 [java] view plain copy import java.text.SimpleDateF ...
- scala 时间,时间格式转换
scala 时间,时间格式转换 1.scala 时间格式转换(String.Long.Date) 1.1时间字符类型转Date类型 1.2Long类型转字符类型 1.3时间字符类型转Long类型 2. ...
- scala时间和时间戳互转
时间转换为时间戳: import java.text.SimpleDateFormat object test { def main(args: Array[String]): Unit = { va ...
- 第一个spark+scala程序
import org.apache.spark._import SparkContext._import java.util.{Calendar,Properties,Date,Locale}impo ...
- scala数据库工具类
scala的数据库连接池,基于mysql import java.util.concurrent.ConcurrentHashMap import com.jolbox.bonecp.{ BoneCP ...
- scala获取某个时间间隔的时间
原始 dataFrame : //获取前7天的时间long类型 def getDaytimeTime(day:Int): Long = { val cal = Calendar.getInstance ...
- scala 获取当前时间的两种方式
在编写程序时,有时需要获取当前时间,这在记录异常信息.获取程序运行耗时很有用处 方式一: val time1=System.currentTimeMillis() 这种方式获取的是程序运行到此的毫秒数 ...
- Scala 获取当前时间
def NowDate(): String = { val now: Date = new Date() val dateFormat: SimpleDateFormat = new SimpleDa ...
- Scala Macros - 元编程 Metaprogramming with Def Macros
Scala Macros对scala函数库编程人员来说是一项不可或缺的编程工具,可以通过它来解决一些用普通编程或者类层次编程(type level programming)都无法解决的问题,这是因为S ...
随机推荐
- spring-boot学习资料
spring-boot: http://www.ityouknow.com/spring-boot 这里的内容都可以学习下: https://zhuanlan.zhihu.com/dreawer?to ...
- Mysql存在则更新,没有则新增
insert ignore 当插入数据时,如出现错误时,如重复数据,将不返回错误,只以警告形式返回. insert ignore into table(col1,col2) values ('val1 ...
- EF框架搭建小总结--CodeFirst模型优先
前言:之前在下总结编写了一篇 EF框架搭建小总结--ModelFirst模型优先 博文,看到一段时间内该博文的访问量蹭.蹭蹭.蹭蹭蹭...往上涨(实际也不是很多,嘿嘿),但是还是按捺不住内心的喜悦(蛮 ...
- JS框架设计读书笔记之-节点模块
节点的创建 浏览器提供了多种手段创建API,从流行程度依次是document.createElement.innerHTML.insertAdjacentHTML.createContextualFr ...
- linux学习(十一)用户和用户组管理
一.用户文件 文件:/etc/passwd 这个文件记录了用户了用户名,用户id,所属组,家目录,shell信息: [root@iZ25lzba47vZ ~]# tail -n3 /etc/passw ...
- Linux学习(三)putty,xshell使用以及密匙登陆
一.认识xshell,putty 他们都是服务器登陆客户端.xshell用户体验更好一点.但这里都学一下. putty下载地址:https://www.chiark.greenend.org.uk/~ ...
- log4donet 的 一篇简单使用实例
背景 最近在写一个Adapter,需要调用别的程序的DLL. Adapter使用的是C#还有.net的等方面的技术.今天在写log这块,就像尝试一下有没有“轮子”可以试试的.在网上搜罗了一番之后,决定 ...
- vue-cli 脚手架目录结构说明
目录结构截图如下 /build 编译配置文件目录,由脚手架自动生成 /config webpack 配置文件目录,由脚手架自动生成 /node_modules node依赖目录,可通过package. ...
- JavaScript系列-----对象基于哈希存储(<Key,Value>之Key篇) (1)
1.Hash表的结构 首先,允许我们花一点时间来简单介绍hash表. 1.什么是hash表 hash表是一种二维结构,管理着一对对<Key,Value>这样的键值对,Hash表的结构如下图 ...
- 诸葛马前课andoid app 应用
前段时间学了点安卓开发的知识,也在同时,陪家人看了<新闺蜜时代 >的后面几集,其中,周小北提到了诸葛马前课. 于是网上查了些资料,学习了一下马前课的计算方法,本着程序服务生活的原则,省去不 ...