JAVASEday09 Date类

Date类

  • 描述:类 Date 表示特定的瞬间,精确到毫秒
  • 构造函数
// 无参构造 创建一个Date对象,
        Date date = new Date();
        System.out.println(date); //打印的是当前的日期
        //有参构造:Date( long date)
        //分配 Date 对象并初始化此对象,以表示自从标准基准时间(称为“历元(epoch)”,即 1970 年 1 月 1 日 00:00:00 GMT)以来的指定毫秒数。
        long l=111111111;
        Date date1 = new Date(l); 
        System.out.println(date1);//给计算机元年加上相应的时间量
        

打印结果:
在这里插入图片描述

  • 方法
    getTime(); 获取当前时间
    setTime(); 给一个日期对象设置上指定的毫秒值
 long l=1000*60*60;
        Date date = new Date();
        Date date1 = new Date(l);
        System.out.println(date);//获取当前时间
        System.out.println(date1);//给计算机元年加相应的毫秒值
        long time = date.getTime();//获取一个日期对象的毫秒值
        System.out.println(time);
        date.setTime(l);//给一个日期对象设置上指定的毫秒值
        System.out.println(date);

输出结果:
在这里插入图片描述
看上面的运行结果,因为在运行程序时会有耗时,所以获取的两个毫秒值会有小小的差别

SimpleDateFormat类

SimpleDateFormat类是是一个以与语言环境有关的方式来格式化和解析日期的具体类,可以把一个日期对象格式化成一个文本(字符串) , 也可以把一个日期字符串解析成一个日期对象

  • 构造函数
    public SimpleDateFormat():使用默认的模式来创建一个SimpleDateFormat对象
    public SimpleDateFormat(String pattern):使用指定的模式(规则比如yyyy:MM:dd HH:mm:ss)来创建一个SimpleDateFormat对象
 Date date = new Date();
        //采用默认的格式,来对日期格式化
        SimpleDateFormat simpleDateFormat = new SimpleDateFormat();
        String format = simpleDateFormat.format(date);
        System.out.println(format);
        //采用自己定义的格式,来对日期格式化
        SimpleDateFormat simpleDateFormat1 = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss E");
        String format1 = simpleDateFormat1.format(date);
        System.out.println(format1);

运行结果:
在这里插入图片描述

  • 字符串与日期对象的相互转化

Date-----日期字符串 调用:format()
日期字符串-----Date 调用: parse();

Date date = new Date();
        SimpleDateFormat simpleDateFormat = new SimpleDateFormat();
        String format = simpleDateFormat.format(date);//把日期对象转换成日期字符串
        Date parse = simpleDateFormat.parse(format);//把日期字符串转换成日期对象

运行结果:
在这里插入图片描述

其他几个类

  • Calendar类
    Calendar 类是一个抽象类,不能直接new对象,可以通过他的一个静态成员方法getInstance()来获取他的对象,它为特定瞬间与一组诸如 YEAR、MONTH、DAY_OF_MONTH、HOUR 等日历字段之间的转换提供了一些方法,并为操作日历字段(例如获得下星期的日期)提供了一些方法。
    成员方法
    public void add(int field,int amount) 根据日历的规则,为给定的日历字段添加或减去指定的时间量
    public final void set(int year,int month,int date) 设置日历时间 年月日
Calendar instance = Calendar.getInstance();
        //给相应的日历字段,加上会减去相应的量  减去可以填数负数
        instance.add(Calendar.YEAR,-1);
        int i = instance.get(Calendar.YEAR);
        System.out.println(i);
        instance.add(Calendar.DAY_OF_MONTH,2);
        System.out.println(instance.get(Calendar.DAY_OF_MONTH));

        //直接设置日期 set()
        Calendar instance1 = Calendar.getInstance();
        instance1.set(2000,6,19,14,20,20);
        int i1 = instance1.get(Calendar.YEAR);
        System.out.println(i1);

运行结果:
在这里插入图片描述

  • Math类
    该类包含用于执行基本数学运算的方法,如初等指数、对数、平方根和三角函数。
 //Math 数学工具类
        //属性
        double pi = Math.PI;
        double e = Math.E;
        //方法
        double num = Math.random(); /*生成随机数 0-----1 之间*/
        //获取最值
        int max = Math.max(19, 20);
        int min = Math.min(20, 40);
        int max1 = Math.max(Math.max(19, 20), 100);
        //向上取整,向下取整
        double ceil = Math.ceil(1.9);
        double floor = Math.floor(1.9);
        //四舍五入
        long round = Math.round(1.48);
        System.out.println(round+"=====");
        //求一个几次幂
        double pow = Math.pow(2, 3);
        System.out.println(pow);
        //求平方根
        double sqrt = Math.sqrt(4);
        System.out.println(sqrt);
        //求一个数的立方根
        double pow2 = Math.pow(8, 1.0/3);
        System.out.println(pow2);
        //求一个数的绝对值
        System.out.println(Math.abs(-1));
        //static double cos ( double a)
        //返回角的三角余弦。
  • Random类
    -该类的实例用于生成伪随机数流。
 Random random = new Random();
        //生成一些随机整数
       byte[] bytes= new byte[10];
        for (int i = 0; i < 100; i++) {
            int num = random.nextInt(); //如果没有传入一个范围,生成的随机数就是int的范围
           int num1 = random.nextInt(100); //范围就是 0-99 包含0和99
            int num2 = random.nextInt(100)+1;
            double num3 = random.nextDouble();
            boolean b = random.nextBoolean();
            //随机一些byte范围的数,填到这个数组中
            random.nextBytes(bytes);
            System.out.println(Arrays.toString(bytes));
        }

System类
在 System 类提供的设施中,有标准输入、标准输出和错误输出流;对外部定义的属性和环境变量的访问;加载文件和库的方法;还有快速复制数组的一部分的实用方法。

System.gc();运行垃圾回收器
System.exit();终止虚拟机
System.currentTimeMillis() 返回以毫秒为单位的当前时间

long start = System.currentTimeMillis();
        for (int i = 0; i < 10; i++) {
            System.out.println("abc");
        }
        long end= System.currentTimeMillis();
        System.out.println((end-start)+"毫秒");
        //退出JVM
        System.exit(0);//给0正常退出 ,非0 强制退出

运行结果:
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值