java中的常用类(包装类、Date类、Calendar类和Math类)
2017-09-14 20:01
459 查看
包装类
包装类主要提供了两大类方法:
1. 将本类型和其他基本类型进行转换的方法
其实强制转换也可以做到某些部分,但是比如说把integer强制转换为String就会报错
包装类和强制转换并没有什么关系,它的目的是把基本数据类型变成对象。因为java是强类型语言,所以当函数接收的参数为对象时,传入的参数必须为对象而不能是基本数据类型,包装类解决了这一问题。
Integer包装类的构造方法:
Integer(int value)/Integer(String s)
例:
int i = 2; Integer m = new Integer(5); Integer n = new Integer("5");
Integer包装类的常用方法:
JDK1.5 引入了自动装箱和拆箱的机制
装箱:把基本类型转换成包装类,使其具有对象的性质
int i = 10; Integer x = i;//自动装箱(当然也可以直接Integer x = 10) Integer x = new Integer(i);//手动装箱
拆箱:和装箱相反,把包装类对象转换成基本类型的值
Integer j = new Integer(10); int m = j;//自动拆箱 int n = j.intValue();//手动拆箱
2. java中基本类型和字符串之间的转换
其中,基本类型转换为字符串有三种方法:
① 使用包装类的 toString() 方法
②使用String类的 valueOf() 方法
③ 用一个空字符串加上基本类型,得到的就是基本类型数据对应的字符串
//将基本类型转换为字符串 int c = 10; String str1 = Integer.toString(c); String str2 = String.valueOf(c); String str3 = c + "";//注意空字符串就是空的 而不是空格
将字符串转换成基本类型有两种方法:
1. 调用包装类的 parseXxx 静态方法
2. 调用包装类的 valueOf() 方法转换为基本类型的包装类,会自动拆箱
//将字符串转换为基本类型 String str = "8"; int a = Integer.valueOf(str); int b = Integer.parseInt(str);
使用Date类和SimpleDateFormat类表示时间
使用 Date 类的默认无参构造方法创建出的对象就代表当前时间:Date now = new Date();//使用默认的构造方法创建Date对象 System.out.println(now);//输出 //结果为 Wed Sept 13 15:10:22 CST 2017
CST代表China Standard Time(中国标准时间 即北京时间)
要想控制输出格式则需SimpleDateFormat类
//得到当前时间 Date d = new Date(); //规定输出格式(规定不同输出则不同) SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH-mm-ss"); //调用format方法,对Date的对象进行操作 String now = sdf.format(d);
还可使用parse()方法将文本转换为日期
//创建日期格式的字符串 String day = "2017年9月13日 15:23:56"; //指定字符串日期格式 SimpleDateFormat df = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss"); //调用parse()方法,将字符串转换为日期 Date day = df.parse(day); //若输出 则为Wed Sept 13 15:23:56 CST 2017
注:1、 调用 SimpleDateFormat 对象的 parse() 方法时可能会出现转换异常,即 ParseException ,因此需要进行异常处理
2、 使用 Date 类时需要导入 java.util 包,使用 SimpleDateFormat 时需要导入 java.text 包
Calendar类
Date类中的很多方法已经过时,因此我们通常使用 Calendar 类进行时间和日期的处理Calendar类是抽象类,且其构造方法为protected的,因此不能用构造方法来创建对象,API中提供了getInstance方法来创建对象
Calendar time = Calendar.getInstance(); int year = time.get(Calendar.YEAR); int month = time.get(Calendar.MONTH)+1;//注意要+1,0表示1月份 int day = time.get(Calendar.DAY_OF_MONTH); int hour = time.get(Calendar.HOUR_OF_DAY); int minute = time.get(Calendar.MINUTE); int second = time.get(Calendar.SECOND); System.out.println("当前时间:" + year + "-" + month + "-" + day + " " + hour + ":" + minute + ":" + second);
Calendar.YEAR 等为 Calendar 类中定义的静态常量,因此要注意大写
Calendar 类提供了 getTime() 方法,用来获取 Date 对象,完成 Calend
4000
ar 和 Date 的转换,还可通过 getTimeInMillis() 方法,获取此 Calendar 的时间值,以毫秒为单位。
Date date = time.getTime();//转换为Date对象 Long millisSum = time.getTimeInMillis();//获取当前毫秒数
= =注意Calendar的拼写
Math类
Math 类位于 java.lang 包中,包含用于执行基本数学运算的方法, Math 类的所有方法都是静态方法,所以使用该类中的方法时,可以直接使用类名.方法名,如: Math.round();Math类常用方法:
// 产生10以内的随机数 int x = (int) (Math.random()*10);
相关文章推荐
- JAVA中的必须知道的常用类!(包装类,Date类,Calendar类,Math类)
- JAVA基础初探(九)Date类、SimpleDateFormat类、Calendar类、Math类(概述及常用方法)
- Java基础--包装类、Math类、Date类等
- java_包装类和常用类、类型转换、Date类、Math类、枚举、String类
- java 静态导入、System类、Date类、Runtime类、Calendar类、Collections类中的shuffle方法、Math类
- Java学习笔记(八)--基本数据类型包装类 Math类 Random类 Date类
- I学霸官方免费教程二十三:Java常用类之日期类 Date类 SimpleDateFormat类 Calendar类
- 智渔课堂官方免费教程二十三:Java常用类之日期类 Date类 SimpleDateFormat类 Calendar类
- 黑马程序员——Java基础——集合工具类Collecions、Arrays、其他对象System类、Runtime类、Date类、Calendar类、Math类等操作
- Java常用工具类API(Arrays类,Collections类,包装类,日期类,Math类,Systeml类)
- Java API(Math类和Random类 包装类 Date类、Calendar类和DateFormat类)
- 【java中常用工具类的总结】System类,Runtime类,Date类,Calendar类,Math类
- java 基础 简单正则表达式使用规则、Math类、Random类、System类、BigInteger类、BigDecimal类、Date类、SimpleDateFormat类、Calendar类
- java笔记 chapter6 StringBuffer类和String Bulider类,Math类 Date类,Calendar类
- 枚举、包装类、Math类、String类、Date类、Calendar类、Random类
- Java中Date类和Calendar类的常用实例小结
- Java计算某日期多少天前后的日期!和Calendar类中的常用字段和方法!
- Java的Date类与Calendar类
- JAVA处理日期时间常用方法:强大的calendar类
- Java常用类之基础数据类型包装类