java自定义获取星期几、几点、几分。

简介:     /**     * @author 9082046**@qq.com     *     */    public void out_week_hour_minute()    {        long eight_hour_ms = 8*60*60*1000;//8小时*分*秒*毫秒,时区影响,北京时区:东八区。

 

    /**
     * @author 9082046**@qq.com
     *
     */
    public void out_week_hour_minute()
    {
        long eight_hour_ms = 8*60*60*1000;//8小时*分*秒*毫秒,时区影响,北京时区:东八区。
        long per_week_ms = 7*24*60*60*1000;//7天*时*分*秒*毫秒,一周。
        long four_day_ms = 4*24*60*60*1000;//4天*时*分*秒*毫秒,时间戳起点是周四。
        long per_day_ms = 24*60*60*1000;//24时*分*秒*毫秒
        long per_hour_ms = 60*60*1000;//60分*秒*毫秒
        long per_minute_ms = 60*1000;//60秒*毫秒
        
        
        //计算方式:在时间戳的基础上增加上四天,然后除以一星期的时间长度取余,
        // 然后对上一步得到的余数除以一天的时间长度取商的值即是周几。
        // 注:该计算方式可能会受计算机所在时区的影响,因为取的时间戳来源于计算机。
        // 对时间戳起点周四增加四天,调整到第四天。
        // 对时间戳起点增加8小时,调整到东八区。
        long now_ms= System.currentTimeMillis() + four_day_ms+eight_hour_ms;        
        long week_remainder_ms = now_ms%per_week_ms;//当前时间距离本周周一0点0分0秒0毫秒的时间跨度。
        long day_remainder_ms = week_remainder_ms%per_day_ms;//当前时间距离今天0点0分0秒0毫秒的时间跨度。
        long hour_remainer_ms = day_remainder_ms %per_hour_ms;//当前时间距离当前小时0分0秒0毫秒的时间跨度。
        
        long week = week_remainder_ms/per_day_ms;
        long hour  = day_remainder_ms/per_hour_ms;
        long minute = hour_remainer_ms/per_minute_ms;


        System.out.println("week:"+week+",hour:"+hour+",minute:"+minute);
    }

 

友情提示,思路来源:每周都是七天,不管是否闰年、是否大小月。

相关文章
|
2月前
|
Java
在 Java 中捕获和处理自定义异常的代码示例
本文提供了一个 Java 代码示例,展示了如何捕获和处理自定义异常。通过创建自定义异常类并使用 try-catch 语句,可以更灵活地处理程序中的错误情况。
84 1
|
2月前
|
Java
在 Java 中,如何自定义`NumberFormatException`异常
在Java中,自定义`NumberFormatException`异常可以通过继承`IllegalArgumentException`类并重写其构造方法来实现。自定义异常类可以添加额外的错误信息或行为,以便更精确地处理特定的数字格式转换错误。
46 1
|
3月前
|
Java
让星星⭐月亮告诉你,自定义定时器和Java自带原生定时器
定时器是一种可以设置多个具有不同执行时间和间隔的任务的工具。本文介绍了定时器的基本概念、如何自定义实现一个定时器,以及Java原生定时器的使用方法,包括定义定时任务接口、实现任务、定义任务处理线程和使用Java的`Timer`与`TimerTask`类来管理和执行定时任务。
78 3
|
1月前
|
Java
java实现从HDFS上下载文件及文件夹的功能,以流形式输出,便于用户自定义保存任何路径下
java实现从HDFS上下载文件及文件夹的功能,以流形式输出,便于用户自定义保存任何路径下
92 34
|
5月前
|
Java 应用服务中间件 Windows
【应用服务 App Service】App Service 中部署Java项目,查看Tomcat配置及上传自定义版本
【应用服务 App Service】App Service 中部署Java项目,查看Tomcat配置及上传自定义版本
|
6月前
|
Java
如何在Java中实现自定义注解和处理器
如何在Java中实现自定义注解和处理器
|
2月前
|
Java 开发者 Spring
[Java]自定义注解
本文介绍了Java中的四个元注解(@Target、@Retention、@Documented、@Inherited)及其使用方法,并详细讲解了自定义注解的定义和使用细节。文章还提到了Spring框架中的@AliasFor注解,通过示例帮助读者更好地理解和应用这些注解。文中强调了注解的生命周期、继承性和文档化特性,适合初学者和进阶开发者参考。
77 14
|
3月前
|
Java
java实现从HDFS上下载文件及文件夹的功能,以流形式输出,便于用户自定义保存任何路径下
java实现从HDFS上下载文件及文件夹的功能,以流形式输出,便于用户自定义保存任何路径下
76 2
java实现从HDFS上下载文件及文件夹的功能,以流形式输出,便于用户自定义保存任何路径下
|
3月前
|
安全 Java
如何在 Java 中创建自定义安全管理器
在Java中创建自定义安全管理器需要继承SecurityManager类并重写其方法,以实现特定的安全策略。通过设置系统安全属性来启用自定义安全管理器,从而控制应用程序的访问权限和安全行为。
87 1
|
3月前
|
消息中间件 存储 Java
大数据-58 Kafka 高级特性 消息发送02-自定义序列化器、自定义分区器 Java代码实现
大数据-58 Kafka 高级特性 消息发送02-自定义序列化器、自定义分区器 Java代码实现
73 3