JAVA高阶笔记(二)--应用类

122 阅读3分钟

JAVA高阶笔记(二)--应用类

1.枚举:

a.why:

​ 某些场合在传入值的时候需要人为的指定某些特定值传入?--枚举

b.what:

​ 枚举指由一组固定的常量组成的类型

c.语法:

[Modifier] enum enumName{

  	enumContantName1[,enumConstantName2...[;]]

  	 //[field,method] 

}

d.how:

    枚举类.枚举值;

2.包装类:

a.why: 包装类有何作用

​ 提供了一系列实用的方法

​ 集合不允许存放基本数据类型数据,存放数字时,要用包装类型

b.what: 包装类把基本类型数据转换为对象

​ 每个基本类型在java.lang包中都有一个相应的包装类

c.注意事项:

​ 1).所有包装类都可将与之对应的基本数据类型作为参数,来构造它们的实例

​ public Type(type value)

​ 如:Integer i=new Integer(1);

​ (*)除Character类外,其他包装类可将一个字符串作为参数构造它们的实例

​ public Type(String value)

​ 如:Integer i=new Integer("123");

​ 2).Boolean类构造方法参数为String类型时,若该字符串内容为 true(不考虑大小写),则该Boolean对象表示true,否则表示false

​ 当包装类构造方法参数为String 类型时,字符串不能为null,

​ 且该字符串必须可解析为相应的基本数据类型的数据,否则编译通过,运行时NumberFormatException异常

d.装箱: 将基本数据类型转为对象类型的过程;

拆箱: 将对象类型转为基本数据类型的过程;

​ 其余包装类同Integer:

		byte----Byte

		short---Short

		int ---Integer

		long---Long

		float---Float

		double---Double

		char---Character

		boolean--Boolean

e.特点:

​ 所有包装类都是final类型,不能创建它们的子类

​ JDK1.5后,允许基本数据类型和包装类型进行混合数学运算,JDK1.5及以后自动装箱和拆箱;

​ 包装类并不是用来取代基本数据类型的,在基本数据类型需要用对象表示时使用

3.String:角标从0开始

a.构造方法:

​ 详见API

b.常见方法:

length():获取字符串长度;

equals():比较字符串内容是否一致;

==:判断两个字符串在内存中的地址,即判断是否是同一个字符串对象;

equalsIgnoreCase():不区分大小写比较内容是否一致;

toUpperCase():将字符串转换为大写;

toLowerCase():将字符串转换为小写;

+:字符串拼接;

concat():字符串拼接;

indexOf():获取字符或字符串第一次出现的角标值;

charAt(index):返回指定角标的字符

substring(startIndex):从指定角标截取

substring(startIndex,endIndex):指定区间截取---大于等于startIndex,小于endIndex

trim():去除字符串前后空格;

split(格式):按照指定格式进行拆分

c.String存储过程

图片

4.StringBuffer:--StringBuider

a.why: 对字符串频繁修改(如字符串连接)时,使用StringBuffer类可以大大提高程序执行效率

b.what: 一个类似于 String 的字符串缓冲区

c.how:

​ append():追加方法

d.对比String:

​ String是不可变的,如果内容值改变对象也改变;stringbuffer始终为一个对象

​ 经常改变内容的字符串最好不要使用String

​ StringBuffer是可变的字符串

​ 字符串经常改变的情况可使用StringBuffer,更高效

​ JDK1.5后提供了StringBuilder,等价StringBuffer

5.Math:

​ java.lang.Math类提供了常用的数学运算方法和两个静态常量E(自然对数的底数) 和PI(圆周率)

提供常见的数学方法

	pow():指数方法

	random():获取随机数方法---0.0 <=  value   <1.0

6.Random:

​ java.util.Random对象可以获取随机数值

​ API

7.date:

​ 日期对象

8.calendar:

​ 日历对象:

​ 注意对象创建方法和属性获取方法