码迷,mamicode.com
首页 > 其他好文 > 详细

15-Math、Date、Calendar、包装类

时间:2019-09-19 19:19:39      阅读:95      评论:0      收藏:0      [点我收藏+]

标签:set   ber   类型   绝对值   解析   类的成员   基本数据类型   format   cte   

Math

概述:Math是一个封装了一系列数学运算和三角函数相关的类

常用方法:(都是静态方法)

  • abs:绝对值
  • ceil:向上取整
  • floor:向下取整
  • max:最大
  • pow:次幂
  • random:0-0.99999随机
  • round:四舍五入
  • sqrt:平方根
  • toRadians:角度转弧度
  • toDegrees:弧度转角度

Date

概述:表示特定的瞬间,是一个毫秒值

构造函数

  1. new Date()
  2. new Date(long)
  3. new Date(year,month,day)

常用方法

  1. getTime()转换获取毫秒数
  2. compareTo(date)
  3. after(date)
  4. before(date)
  5. setTime(毫秒数,这个计时从1970开始)

SimpleDateFormat

主要用来定义一个日期的格式模板。
概念:它是DateFormat的子类,专门用于对Date进行格式化和解析

使用过程:

    //创建这个对象的作用和他的名字一样就是定义一种格式罢了。然后这个格式对象可以调用两个方法
    SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
    //第一个format格式方法,能够把日期格式成自定义格式的字符串
    String string = simpleDateFormat.format(new Date());
    //现在有一个日期和我自定义的格式类似,现在我还可以用之前的格式进行解析
    String string1 = "1520-5-12";
    //第二个可以把和格式对象相同格式的日期变成Date对象
    Date date = simpleDateFormat.parse(string1);
    //值得注意的是如果字符串的格式和对象的格式不同会出错,但是以上的对象可以两用,因为格式一样。

常见的时间模式:
1、y:年
2、M:月
3、d:日
4、H:24小时制的小时数
5、m:分钟
6、s:秒

格式化

将Date日期以指定的格式按字符串输出
format(Date)

解析

将已经格式化后的日期字符串解析成一个Date对象
parse(String)
注:
要解析的日期字符串的格式必须与SimpleDateFormat指定的格式一致,
否则会发生ParseException

Calendar

概念:一个操作日历字段的抽象类
对象的获取:getInstance()
Calendar calendar = Calendar.getInstance();这里只能用静态方法获取对象。

常用方法:

  1. getTime():获取Date对象
    System.out.println(calendar.getTime()); System.out.println(calendar.get(Calendar.YEAR));
  2. getTimeInMillis():获取毫秒值,同Date的getTime(),同System.currentTimeMillis();
    System.out.println(calendar.getTimeInMillis());
  3. set(field,value):对指定的时间域设置值
    calendar.set(Calendar.DAY_OF_YEAR,7);
  4. set(year,month,date,hour,miunte,second)
    calendar.set(2012,4,5);
  5. get(field):获取指定时间域上的值
    System.out.println(calendar.get(Calendar.YEAR));
  6. add(field,amount):为指定的时间域设置偏移值
    calendar.add(Calendar.YEAR,2); System.out.println(calendar.get(Calendar.YEAR)); 输出:2021

基本数据类型的包装类

概述:基本数据类型的创建和使用非常方便,但是我们无法通过基本数据类型调用一些功能来操作这些数据。
现在将这些基本数据类型封装成一个类,就可以在这个类中定义一些专门操作这些数据的功能。
这种类就是基本数据类型的包装类。

基本数据类型与包装类的对应关系

byte Byte
short Short
int Integer
long Long
float Float
double Double
char Character
boolean Boolean

装箱和拆箱

装箱:基本类型->包装类

  1. 使用包装类的构造函数
  • new Integer(int)
  • new Integer(String):当字符串不是整数形式的字符串时会发生NumberFormatException异常
  1. 使用包装类的静态方法
  • valueOf(int)
  • valueOf(String):当字符串不是整数形式的字符串时会发生NumberFormatException异常

拆箱:包装类->基本类型

  1. 使用包装类的成员方法
  • intValue(Integer)

自动装箱和自动拆箱

jdk1.5之后,基本类型与其包装类可以实现自动的转换

自动装箱:它隐含着new Integer(t);

int t = 3; 
Integer i = t;

自动拆箱:它隐含着i.intValue();

    Integer i = new Integer(666);
    int k = i;

包装类的功能

获取指定类型的最大最小值
Integer.MAX_VALUE
Integer.MIN_VALUE

常用方法:

  1. max(int,int)
  2. min(int,int)
  3. toBinaryString(int) :二进制
  4. toOctalString(int) :八进制
  5. toHexString(int) :十六进制

基本类型/包装类与字符串的转换

1、基本类型/包装类->String

  • 空串的拼接
  • 包装类的静态toString(数据)方法
  • String的静态valueOf(数据)方法

2、String->基本类型/包装类

  • 包装类的构造函数
  • 包装类的静态valueOf(String)方法
  • 包装类的静态parseXxx(String)方法

额外

  1. Integer包装类中可以在数据的前面写+ -但只能写在最前面,并且只能写+-不能写别的。

15-Math、Date、Calendar、包装类

标签:set   ber   类型   绝对值   解析   类的成员   基本数据类型   format   cte   

原文地址:https://www.cnblogs.com/macht/p/11551772.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!