• 包装类

  基本数据类型不能调用方法,功能简单,为了让基本数据类型也具备对象的特性,Java为每个基本数据类型提供了一个包装类,这样就可以像操作对象那样来操作基本数据类型。

  基本类型和包装类之间的对应关系:

  包装类主要提供了两大类方法:

  1. 将本类型和其他类型进行转换的方法
  2. 将字符串和本类型及包装类互相转换的方法

  以Integer包装类为例,介绍包装类的特性:

  Integer包装类的构造方法

  

Integer包装类的常用方法

  

  • 基本类型和包装类之间的转换

    以Integer为例。JDK1.5引入自动装箱和拆箱的机制,使包装类和基本类型之间的转换更轻松了。

    1.装箱:把基本类型转换成包装类,使其具有对象的性质,分为自动装箱和手动装箱。

int i = 3;//定义一个int基本类型
Integer m = new Integer(5);//手动装箱
Integer n = i;//自动装箱

    2.拆箱:把包装类对象转换成基本类型的值,分为手动拆箱和自动拆箱

Integer m = new Integer(5);
int x = m.intValue();//手动拆箱
int y = m;//自动拆箱
  • 基本类型转换为字符串类型

    1.使用包装类的toString()方法

    2.使用String类的valueOf()方法

    3.用一个空字符串加上基本类型,得到的就是基本类型数据对应的字符串

int c = 12;
String str1 = Integer.toString(c);
String str2 = String.valueOf(c);
String str3 = c + "";
  • 字符串转化成基本类型

    1.调用包装类的parseXxx静态方法

    2.调用包装类的valueOf 方法转换为基本类型的包装类,会自动拆箱

String d = "13";
int i1 = Integer.parseInt(d);
int i2 = Integer.valueOf(d);
  • 使用Date和SimpleDateFormat类表示时间

  处理日期和时间的相关数据,我们可以使用java.util包中的Date类。使用Date类的默认无参构造方法创建出的对象表示当前时间。

  可以使用SimpleDateFormat类来对日期时间进行格式化,如可以将日期转换为指定格式的文本,也可以将文本转换为日期。

package cn.test;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.text.ParseException; public class Demo { public static void main(String[] args) {
Date d = new Date();
System.out.println(d); //将日期转换为指定格式的文本
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String today = sdf.format(d);
System.out.println(today); //将文本转换为日期
String day = "2017年03月27日 16:02:30";
SimpleDateFormat df = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss");
try{
Date date = df.parse(day);
System.out.println(date);
} catch (ParseException e) {
System.out.println(e.getMessage());
}
} }

  运行结果:

  Mon Mar 27 16:14:58 CST 2017
  2017-03-27 16:14:58
  Mon Mar 27 16:02:30 CST 2017

  注意:调用SimpleDateFormat对象的parse()方法时可能会出现转换异常,及ParseException,因此需要进行异常处理;使用Date类时需要导入java.util包,使用SimpleDateFormat时需要导入java.text包。

  • Calendar类

  Date类最主要的作用就是获取当前时间,同时这个类里面也具有设置时间以及一些其他功能,但由于类本身设计的问题,不建议使用,推荐使用Calendar类进行日期和时间的处理。

  java.util.Calendar 类是一个抽象类,可以通过调用 getInstance() 静态方法获取一个 Calendar 对象,此对象已由当前日期时间初始化,即默认代表当前时间,如 Calendar c = Calendar.getInstance();

package com.test;
import java.util.Calendar;
import java.util.Date; public class Demo {
public static void main(String[] args) {
Calendar c = Calendar.getInstance();
int year = c.get(Calendar.YEAR);
int month = c.get(Calendar.MONTH) + 1;
int day = c.get(Calendar.DAY_OF_MONTH);
int hour = c.get(Calendar.HOUR_OF_DAY);
int minute = c.get(Calendar.MINUTE);
int second = c.get(Calendar.SECOND);
System.out.println("现在的时间是:" + year + "-" + month + "-" + day + " " + hour + ":" + minute + ":" + second);
}
}

  Calendar 类提供了getTime()方法用来获取Date对象,完成Calendar和Date的转换,还可以通过getTimeInMillis()方法获取此Calendar的时间值,以毫秒没单位。

package com.test;
import java.util.Calendar;
import java.util.Date; public class Demo {
public static void main(String[] args) {
Calendar c = Calendar.getInstance();
Date date = c.getTime();
Long time = c.getTimeInMillis();
System.out.println(date);
System.out.println(time);
}
}

  运行结果: 

  Mon Mar 27 22:02:55 CST 2017
  1490623375468

  • Math类

  Math类位于java.lang包中,包含用户执行基本数学运算的方法,Math类的所有方法都是静态方法,所有可以直接使用类名.方法名,如:Math.round();

  常用的方法:

  

Java—包装类、Date和SimpleDateFormat、Calendar类的更多相关文章

  1. Java基础 与时间日期相关的类:System -Date -SimpleDateFormat -Calendar类 -解决后缀.000Z 的时区问题

    笔记总结: /**与时间相关的类:System_Date_SimpleDateFormat_Calendar类 * 1.system 类下的currentTimeMillis() * 输出从1970年 ...

  2. Java学习笔记23(Calendar类)

    Calendar意味日历,对Date类中的很多方法做了改进 Calendar类是一个抽象类,不可以见对象,需要子类完成实现 不过这个类有特殊之处,不需要创建子类对象,而是使用它的静态方法直接获取: 示 ...

  3. 06_java 时间获取练习_Date\SimpleDateFormat\Calendar类练习

     1.获取当前的日期,并把这个日期转换为指定格式的字符串,如2088-08-08 08:08:08 import java.text.SimpleDateFormat; import java.uti ...

  4. 时间获取_Date\SimpleDateFormat\Calendar类

     1.获取当前的日期,并把这个日期转换为指定格式的字符串,如2088-08-08 08:08:08 import java.text.SimpleDateFormat; import java.uti ...

  5. [转载]java中Date,SimpleDateFormat

    一.Java中的日期概述: 日期在Java中是一块非常复杂的内容,对于一个日期在不同的语言国别环境中,日期的国际化,日期和时间之间的转换,日期的加减运算,日期的展示格式都是非常复杂的问题. 在Java ...

  6. Java中Date类型的工具类

    package com.mytripod.util; import java.text.DateFormat; import java.text.SimpleDateFormat; import ja ...

  7. 使用 Date 和 SimpleDateFormat 类表示时间、Calendar类和Math类

    一. Date 和 SimpleDateFormat类表示时间 在程序开发中,经常需要处理日期和时间的相关数据,此时我们可以使用 java.util 包中的 Date 类.这个类最主要的作用就是获取当 ...

  8. Java中Date和Calender类的使用方法

    查看文章     Java中Date和Calender类的使用方法 2009-10-04 20:49 Date和Calendar是Java类库里提供对时间进行处理的类,由于日期在商业逻辑的应用中占据着 ...

  9. 木卯先生的笔记---Date类、DateFormat类和Calendar类

    1.Date类 1.1 简介 Date类是 java.util 包下面的类,表示特定的瞬间,精确到毫秒. 1.2 方法 1.2.1 Date() 构造方法 public Date() :分配 Date ...

  10. JAVA中Date类的使用

    一. Date类 Date类对象的创建: 1.创建一个当前时间的Date对象 //创建一个代表系统当前日期的Date对象 Date d = new Date(); 2.创建一个我们指定的时间的Date ...

随机推荐

  1. 牛客寒假算法基础集训营1 D 小a与黄金街道

    链接:https://ac.nowcoder.com/acm/contest/317/D 首先被数学题吓到了.gcd(n,x)==1 那么必定有 gcd(n,n-x)==1 证明略. 并且两个人的对答 ...

  2. java 简单封装resultMap返回对象为map

    public class DbUtils { private static String host = "47.93.******"; private static String ...

  3. Liunx 发送邮件

    可以使用rpm -qa | grep mailx查看系统自带的mailx版本. 使用wget http://sourceforge.net/projects/heirloom/files/latest ...

  4. C#获取单元格值(使用NPOI插件)

    /// <summary> /// 获取单元格的值 /// </summary> /// <param name="item"></par ...

  5. poj3713 Transferring Sylla 枚举+tarjan判割点

    其实就是判断是否为三连通图 三连通图指的是去掉3个点就不连通的图,但是并没有直接求三连通的算法.著名的Tarjan算法可以求解连通和割点,再枚举删除一个点就能达到三连通的目的. 先看用例2,是由用例1 ...

  6. chrome插件 crap jsonview

    最近有用到几个非常好用的Chrome  记录一下: 1.Crap Api debug,直接在Chrome标签打开的,界面大概长这样,方便调试 2. adblock 比较大众 3. tampermonk ...

  7. 第十一章:DOM扩展

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  8. pip安装python库

  9. c++11 move构造函数和move operator 函数 学习

    先看个代码吧!!!!!!!!!! #include <iostream> using namespace std; class A { public: A(){cout<<&q ...

  10. Linpack之HPL测试

    平台信息 Description: CentOS Linux release 7.6.1810 (Core) 注意事项 安装HPL之前需要配置好: GCC/Fortran77 编译器 BLAS/CBL ...