zoukankan      html  css  js  c++  java
  • 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("
    ")
    
        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)//格式化
    
        }
  • 相关阅读:
    centos 系统时间设置
    centos6 centos7 配置开机启动服务
    centos6.9 samba配置
    vmware异常关闭后导致虚拟机无法打开问题解决办法
    try using -rpath or -rpath-link
    ZR#988
    提高十连测day3
    Atcoder ABC 141
    ZR#957
    ST表
  • 原文地址:https://www.cnblogs.com/feiyumo/p/7910734.html
Copyright © 2011-2022 走看看