java常用类Day10

这篇博客介绍了Java中Date类的使用,包括获取当前时间、计算昨天的时间以及进行时间比较。同时,文章还讲解了BigDecimal类在进行大浮点数精确计算时的重要性和使用方法,演示了加减乘除操作,并展示了如何避免double类型的精度问题。
摘要由CSDN通过智能技术生成

Date类

  • Date表示特定的瞬间,精确到毫秒。Date类中的大部分方法都已经被Calendar类中的方法所取代
  • 时间单位
    • 1秒=1000毫秒
    • 1毫秒=1000微秒
    • 1微秒=1000纳秒(纳秒也叫毫微秒)
package com.commonClass.dateClass;

import java.util.Date;

public class Demo01 {
    public static void main(String[] args) {
        //1.创建Date对象

        //今天的时间
        Date date1=new Date();
        System.out.println(date1.toString());
        System.out.println(date1.toLocaleString());//toLocaleString()已经过时了,但仍然可以用

        //昨天的时间
        Date date2=new Date(date1.getTime()-60*60*24*1000);//后面的数字表示60秒*60分钟*24小时*1000毫秒,这是一天的时间,用今天的时间减去一天便是昨天的时间
        System.out.println(date2.toLocaleString());

        //2.方法after before
        boolean b1=date1.after(date2);
        System.out.println(b1);
        boolean b2=date1.before(date2);
        System.out.println(b2);

        //比较compareTo();//string 是比较他们的位置  compare是比较本身的值
        int d1=date1.compareTo(date2);//date2是今天,今天肯定要比昨天多,所以输出为1
        int d2=date2.compareTo(date1);//输出为-1
        int d3=date1.compareTo(date1);//输出为0
        System.out.println(d1);
        System.out.println(d2);
        System.out.println(d3);

        //比较是否相等equals()
        boolean b=date1.equals(date2);
        System.out.println(b);
    }
}
package com.commonClass.bigDecimalClass;

import java.math.BigDecimal;

public class Demo01 {
        public static void main(String[] args) {

            double d1 = 1.0;
            double d2 = 0.9;//double类型采用的是近似值存储方式,看着是1,实际上存的是0.999999999999999999999999……,看着是0.9,实际存的是0.899999999999……
            System.out.println(d1 - d2);//为什么不是0.1
            System.out.println(d1+d2);
            System.out.println(d1*d2);

            double result=(1.4-0.5)/0.9;
            System.out.println(result);//为什么不是1

            //BigDecimal,大的浮点数的精确计算
            BigDecimal bd1 = new BigDecimal("1.0");
            BigDecimal bd2 = new BigDecimal("0.9");

            //减法
            BigDecimal r1=bd1.subtract(bd2);//这不是数字间的基本运算,所以要实现减法需要调用方法。subtract就可以实现BigDecimal之间的减法运算
            System.out.println(r1);

            //加法
            BigDecimal r2=bd1.add(bd2);
            System.out.println(r2);

            //乘法
            BigDecimal r3=bd1.multiply(bd2);
            System.out.println(r3);

            //除法
            BigDecimal r4=new BigDecimal("1.4").
                    subtract(new BigDecimal("0.5")).
                    divide(new BigDecimal("0.9"));//可以连着写,但是影响阅读,所以隔开能更清晰一些
            System.out.println(r4);

            //BigDecimal r5=new BigDecimal("20").divide(new BigDecimal("3"));    //   20/3除不尽,同时也没告诉他保留几位小数,于是就会抛出异常
            BigDecimal r5=new BigDecimal("20").divide(new BigDecimal("3"),2,BigDecimal.ROUND_HALF_UP);//后面的代表保留2位小数,并遵循四舍五入
            System.out.println(r5);
        }
}

Calender类

  • Calendar提供了获取或设置各种日历字段的方法

  • 构造方法

    • protected Calendar( ):由于修饰符是protected,所以无法直接创建对象
  • 其他方法

方法名说明
static Calendar getlnstance使用时默认时区和区域获取日历
void set(int year,int month,int date,int hourofday,int minute,int second)设置日历的年、月、日、时、分、秒
int get(int field)返回给定日历字段的值。字段比如年、月、日等
void setTime(Date date)用给定的Date设置此日历的时间。Date-Calendar
Date getTime()返回一个Date表示此日历的时间。Calendar-Date
void add(int field,int amount)按照日历的规则,给指定字段添加或减少时间量
long getTimelnMillies()毫秒为单位返回该日历的时间值
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
资源包主要包含以下内容: ASP项目源码:每个资源包中都包含完整的ASP项目源码,这些源码采用了经典的ASP技术开发,结构清晰、注释详细,帮助用户轻松理解整个项目的逻辑和实现方式。通过这些源码,用户可以学习到ASP的基本语法、服务器端脚本编写方法、数据库操作、用户权限管理等关键技术。 数据库设计文件:为了方便用户更好地理解系统的后台逻辑,每个项目中都附带了完整的数据库设计文件。这些文件通常包括数据库结构图、数据表设计文档,以及示例数据SQL脚本。用户可以通过这些文件快速搭建项目所需的数据库环境,并了解各个数据表之间的关系和作用。 详细的开发文档:每个资源包都附有详细的开发文档,文档内容包括项目背景介绍、功能模块说明、系统流程图、用户界面设计以及关键代码解析等。这些文档为用户提供了深入的学习材料,使得即便是从零开始的开发者也能逐步掌握项目开发的全过程。 项目演示与使用指南:为帮助用户更好地理解和使用这些ASP项目,每个资源包中都包含项目的演示文件和使用指南。演示文件通常以视频或图文形式展示项目的主要功能和操作流程,使用指南则详细说明了如何配置开发环境、部署项目以及常见问题的解决方法。 毕业设计参考:对于正在准备毕业设计的学生来说,这些资源包是绝佳的参考材料。每个项目不仅功能完善、结构清晰,还符合常见的毕业设计要求和标准。通过这些项目,学生可以学习到如何从零开始构建一个完整的Web系统,并积累丰富的项目经验。
资源包主要包含以下内容: ASP项目源码:每个资源包中都包含完整的ASP项目源码,这些源码采用了经典的ASP技术开发,结构清晰、注释详细,帮助用户轻松理解整个项目的逻辑和实现方式。通过这些源码,用户可以学习到ASP的基本语法、服务器端脚本编写方法、数据库操作、用户权限管理等关键技术。 数据库设计文件:为了方便用户更好地理解系统的后台逻辑,每个项目中都附带了完整的数据库设计文件。这些文件通常包括数据库结构图、数据表设计文档,以及示例数据SQL脚本。用户可以通过这些文件快速搭建项目所需的数据库环境,并了解各个数据表之间的关系和作用。 详细的开发文档:每个资源包都附有详细的开发文档,文档内容包括项目背景介绍、功能模块说明、系统流程图、用户界面设计以及关键代码解析等。这些文档为用户提供了深入的学习材料,使得即便是从零开始的开发者也能逐步掌握项目开发的全过程。 项目演示与使用指南:为帮助用户更好地理解和使用这些ASP项目,每个资源包中都包含项目的演示文件和使用指南。演示文件通常以视频或图文形式展示项目的主要功能和操作流程,使用指南则详细说明了如何配置开发环境、部署项目以及常见问题的解决方法。 毕业设计参考:对于正在准备毕业设计的学生来说,这些资源包是绝佳的参考材料。每个项目不仅功能完善、结构清晰,还符合常见的毕业设计要求和标准。通过这些项目,学生可以学习到如何从零开始构建一个完整的Web系统,并积累丰富的项目经验。
资源包主要包含以下内容: ASP项目源码:每个资源包中都包含完整的ASP项目源码,这些源码采用了经典的ASP技术开发,结构清晰、注释详细,帮助用户轻松理解整个项目的逻辑和实现方式。通过这些源码,用户可以学习到ASP的基本语法、服务器端脚本编写方法、数据库操作、用户权限管理等关键技术。 数据库设计文件:为了方便用户更好地理解系统的后台逻辑,每个项目中都附带了完整的数据库设计文件。这些文件通常包括数据库结构图、数据表设计文档,以及示例数据SQL脚本。用户可以通过这些文件快速搭建项目所需的数据库环境,并了解各个数据表之间的关系和作用。 详细的开发文档:每个资源包都附有详细的开发文档,文档内容包括项目背景介绍、功能模块说明、系统流程图、用户界面设计以及关键代码解析等。这些文档为用户提供了深入的学习材料,使得即便是从零开始的开发者也能逐步掌握项目开发的全过程。 项目演示与使用指南:为帮助用户更好地理解和使用这些ASP项目,每个资源包中都包含项目的演示文件和使用指南。演示文件通常以视频或图文形式展示项目的主要功能和操作流程,使用指南则详细说明了如何配置开发环境、部署项目以及常见问题的解决方法。 毕业设计参考:对于正在准备毕业设计的学生来说,这些资源包是绝佳的参考材料。每个项目不仅功能完善、结构清晰,还符合常见的毕业设计要求和标准。通过这些项目,学生可以学习到如何从零开始构建一个完整的Web系统,并积累丰富的项目经验。
资源包主要包含以下内容: ASP项目源码:每个资源包中都包含完整的ASP项目源码,这些源码采用了经典的ASP技术开发,结构清晰、注释详细,帮助用户轻松理解整个项目的逻辑和实现方式。通过这些源码,用户可以学习到ASP的基本语法、服务器端脚本编写方法、数据库操作、用户权限管理等关键技术。 数据库设计文件:为了方便用户更好地理解系统的后台逻辑,每个项目中都附带了完整的数据库设计文件。这些文件通常包括数据库结构图、数据表设计文档,以及示例数据SQL脚本。用户可以通过这些文件快速搭建项目所需的数据库环境,并了解各个数据表之间的关系和作用。 详细的开发文档:每个资源包都附有详细的开发文档,文档内容包括项目背景介绍、功能模块说明、系统流程图、用户界面设计以及关键代码解析等。这些文档为用户提供了深入的学习材料,使得即便是从零开始的开发者也能逐步掌握项目开发的全过程。 项目演示与使用指南:为帮助用户更好地理解和使用这些ASP项目,每个资源包中都包含项目的演示文件和使用指南。演示文件通常以视频或图文形式展示项目的主要功能和操作流程,使用指南则详细说明了如何配置开发环境、部署项目以及常见问题的解决方法。 毕业设计参考:对于正在准备毕业设计的学生来说,这些资源包是绝佳的参考材料。每个项目不仅功能完善、结构清晰,还符合常见的毕业设计要求和标准。通过这些项目,学生可以学习到如何从零开始构建一个完整的Web系统,并积累丰富的项目经验。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值