1.基本类型对应的包装类
int Integer String "10.23" --->Double.parseDouble();
char Charater
byte Byte
float Float
double Double
short Short
boolean Boolean
long Long
包装类比基本数据拥有更多的方法, 可以方法方便操作
作用:包装类可以让基本数据类型和String之间进行互相转化!!!!!!!!
int -- -- > String
方式1 :
int i = 10 ;
String s = i + "" ;
String -- -- > int
方式1 :
static int parseInt ( String s)
例如:
String number = "100" ;
number += 2 ;
int num = Integer. parseInt ( number) ;
num+= 2 ;
使用场景:
当我们得到一个纯数字的字符串, 需要对他进行加减乘除的算数操作,那么需要将其"字符串"的角色,变成int角色
jdk1.5以后出现了自动拆装箱的过程
装箱:
将基本变成其对应包装类
拆箱:
将包装类变成其对应的基本类型
Integer i = 10;
进制:
0x : 十六进制
0: 八进制
0b: 二进制
什么都不写: 十进制
2.Date
构造:
时间原点: 1970年1月1日0时0分0秒 ---->1970年1月1日8时0分0秒(东八区)
Date(); ---->创建日期对象,代表当前电脑时间,距离时间原点过得毫秒值
Date(long time); ----> 创建日期对象,指定毫秒值距离时间原点的时间
例如:
Date date = new Date ( ) ; -- -- > 代表2019 年12 月3 日11 点41 分
Date date = new Date ( 1000 ) ; -- -- > 代表1970 年1 月1 日8 点0 分1 秒
注意: 在使用指定时间的话, 毫秒值最好+L修饰
成员方法:
setTime(long time); ---->设置时间中维护的毫秒值
long getTime(); ----> 获取时间中的毫秒值
3.SimpleDateFormat
构造:
SimpleDateFormat(String 模式);
yyyy: 表示年
MM: 表示月
dd: 表示日
HH: 时
mm: 分
ss: 秒
常用模式:
yyyy年MM月dd日 HH:mm:ss
yyyy-MM-dd HH:mm:ss
作用:
String format(Date date); ----> Date ---->String
Date parse(String time); ----> String ---->Date
注意: 要被格式化的字符串的模式必须和SimpleDataformat的模式一样,这里出现编译时异常
例如:
String s = "2019-12-12"
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
4.Calender(了解!!!)
作用: 专门针对年,月,日,时有有些特殊的操作
构造: 是一个抽象类
Calender c = Calender.getInstance();// 通过静态方法获取Calender的子类对象
方法:
get(int field); ---->获取日历中的信息
常用的字段:
Calender.YEAR
Calender.MONTH
Calender.DATE
add(int field, int amount); --->给日历中某个字段添加或者减少一些值
set(int year,int month,int day); --->将日历的年月日一起修改了!!!!
5.闰年(了解!!!)
能够被4整除, 但是不能被100整除 或者 能够被400整除的叫做闰年, 其他都是平年
6.异常的体系
Throwable是异常的根类
Error: 代表"硬件"层面的错误
Exception:
编译时异常: 在编译期间就会报错的异常, 程序员必须处理, 如果不处理无法编译通过
除了运行时异常都是编译时异常
处理方式: 要求必须处理
运行时异常: 在运行期间才有可能报的错, 不影响编译
RuntimeException或者子类都是运行时异常
处理方式: 可以处理,也可以不处理
异常如果我们不处理, jvm会处理, 默认处理方式: 1.将错误信息(异常类名,异常原因, 异常位置)打印到控制台上 2.将程序终止了
异常处理的第一种方式:---->为了不让程序遇到异常终止!!!
try {
1. 可能出现异常的代码
2. 出现异常后不需要执行的代码
} catch ( 异常类名 变量名) {
} catch ( 异常类名 变量名) {
} catch ( 异常类名 变量名) {
} . . .
异常处理的第二种方式:
throws 异常类名
位置: 在方法声明上
本质: 将异常抛给调用者处理
7.异常的功能:
我们发现, 异常基本都是一样, 唯一不一样就是异常类名不一样,所有的子类并没有特有的方法, 所有的方法都是从Throwable中继承下来的
我们研究Throwable的功能
String getMessage(); ---->获取异常原因
String toString(); ---->可以获取异常原因,异常类名
void printStackTrace(); ----> 将异常类名,异常原因, "异常位置"打印到控制台
8.throw和throws的区别
throws:
位置: 在方法声明上
作用: 后面跟的异常类名, 可以跟多个异常类名, 多个异常类名之间用","隔开,表示这个可能出现的异常
throw
位置: 方法体内
作用: 制造异常对象, 后面跟的异常对象,只能跟一个
通常使用场景: 校验参数的合法性, 如果参数不满足要求, 可以通过该关键字造一个异常给调用者