Java中的常用类(3)—日期、数字、随机数、枚举。

一、日期

(1)获取系统当前时间(Date)

Date time = new Date();

调用time的无参数构造方法,可以得到日期

Tue May 12 08:27:08 CSR 2020

但是这个是不符合我们的格式的,那么怎么办呢?

(2)SimpleDateFormat 这个类对time进行转换。日期转换格式。

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-ddHH:mm:ssSSS");
String s1 =sdf.format(time);
System.out.println(s1);
2020-05-12 08:34:19 879

(3)字符串怎么转换成Date类型(String -->date)

String stringTime = "2009-5-309:99:09";
SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-ddHH:mm:ss");
Date dateTo = sdf1.parse(stringTime);
System.out.println(dateTo);
SUN May 03 10:39:09 CST 2009

总结上面就是:

(a)怎么获取系统当前时间

  (b)String -->date

 (c) Date --->String

(4)获取自1970年1月1日 00:00:00 000到当前系统时间的总毫秒数

long TImeMillis=System.currentTimeMillis();
System.out.println(TImeMillis);
1589244963682

(5)获得距离1970年有多少毫秒

  • Date(long date)
  • 分配一个 Date对象,并将其初始化为表示自称为“时代”的标准基准时间以后的指定毫秒数,即1970年1月1日00:00:00 GMT。

这个是带有参数的long date


//Date中带有参数的
Date d1 = new Date(1);
//进行类型的转换
SimpleDateFormat s1 = new SimpleDateFormat("yyyy-MM-ddHH:mm:ssSSS");
String s2 = s1.format(d1);
System.out.println(s2);
1970-01-01 08:00:00:001

(6)如何获取昨天的此时时间?

//可以用这个构造方法获取昨天的现在的时间
Date d2 = new Date(System.currentTimeMillis()-1000*60*60*24);
SimpleDateFormat s3 = new SimpleDateFormat("yyyy-MM-ddHH:mm:ssSSS");
String t1=s3.format(d2);
System.out.println(t1);
2020-05-11 09:19:24 350

二、数字类

数字格式
# 代表任意数字
, 代表千分位
. 代表小数点
0 代表不够时补0
        DecimalFormat df = new DecimalFormat("###,###.##");
        String s = df.format(1234.561232);
        System.out.println(s);

        DecimalFormat df2 = new DecimalFormat("###,###.0000");
        String s2 = df2.format(1234.56);
        System.out.println(s2);
1,234.56
1234.5600,

三、随机数

(1)Random

Random r1 = new Random();
int num1=r1.nextInt();
System.out.println(num1);

产生随机数的,随机产生一个Int类型取值范围内的数字。

(2)给随机数定一个范围

//产生[0~100]之间的随机数。不能产生101
//nextInt翻译为:下一个Int类型的数据是101,表示只能取到100.
int num2=r1.nextInt(101);
System.out.println(num2);
66

四、enum(枚举)

(1)先看一下这种设计

   public static int divide(int a,int b){
        try{
            int c =a/b;
            return 10;
            
        }catch (Exception e){
            return  0;
        }

再看一下这种设计

    public static boolean divide(int a,int b){
        try{
            int c =a/b;
            return  true;
        }catch (Exception e){
            return  false;
        }

第二种设计明显要比第一种要好,但是如果有3种情况怎么办?以上更多这时候就需要用到枚举了。

(2)枚举简介

(a)枚举编译之后也是生成class文件。

(b)枚举也是一种引用数据类型。

(c)枚举中的每一个值都可以看做一个常量。

(d)语法

Enum Result{
SUCCESS
FAIL
}

总结:以上基本上就是常用类了,String、八大包装类、日期、数字、随机数、枚举。

猜你喜欢

转载自blog.csdn.net/MyxZxd/article/details/106106086