scala处理时间序列数据-创新互联
传统的java对于时间的操作是用Date类和Calender类
但是使用很麻烦
scala有一个包装库叫NScalaTime,他提供了JodaTime的一些语法。
需要在maven库中下载nscala的jar包
然后import com.github.nscala_time.time.Imports._
scala> val dt1=new DateTime(2014,9,4,9,0)
warning: Class org.joda.convert.ToString not found - continuing with a stub.
warning: Class org.joda.convert.ToString not found - continuing with a stub.
dt1: org.joda.time.DateTime = 2014-09-04T09:00:00.000+08:00
scala> dt1.dayOfYear.get
res0: Int = 247
scala> val dt2=new DateTime(2014,10,31,15,0)
dt2: org.joda.time.DateTime = 2014-10-31T15:00:00.000+08:00
scala> dt1
scala> val dt3=dt1+60.days
warning: Class org.joda.convert.FromString not found - continuing with a stub.
dt3: org.joda.time.DateTime = 2014-11-03T09:00:00.000+08:00
//字符转为date
scala> import java.text.SimpleDateFormat
import java.text.SimpleDateFormat
scala> val format=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss")
format: java.text.SimpleDateFormat = java.text.SimpleDateFormat@4f76f1a
scala> val date=format.parse("2014-10-12 10:30:44")
date: java.util.Date = Sun Oct 12 10:30:44 CST 2014
scala> val datetime=new DateTime(date)
datetime: org.joda.time.DateTime = 2014-10-12T10:30:44.000+08:00
//做差
scala> val d=new Duration(dt1,dt2)
d: org.joda.time.Duration = PT4946400S
scala> d.getMillis
res5: Long = 4946400000
scala> d.getStandardDays
res6: Long = 57
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
名称栏目:scala处理时间序列数据-创新互联
分享地址:http://azwzsj.com/article/dpcdee.html