顾名思义:常用类就是在Java中常用的类
为什么要学包装类?
1:基本数据类型之间的相互转换不是都可以自动转换的,而你强制转换又会出问题
2:有时候一个函数需要传递一个Object的变量 而你想传递int类型的进去显然不行
1.基本数据类型的包装类:
1)JDK为每一一种基本数据类型都提供一个对应的包装类。
byte --> java.lang.Byte
short --> java.lang.Short
int -->java.lang.Integer ※
long -->java.lang.Long
char -->java.lang.Character ※
float -->java.lang.Float
double -->java.lang.Double
boolean -->java.lang.Boolean
2 )掌握各种基本类型数据和包装类之间的相互转换,与字符串之间的相互转换。
3)JDK5.0中针对基本数据类型提供了一个新语法:自动装箱和自动拆箱。
自动装箱:把基本数据类型直接当作对应的包装类对象来使用。
自动拆箱:把包装类对象直接当做对应的基本数据类型。
2.字符串相关类
字符串:有多个字符组成的序列就是字符串。
位置:java.lang包中。
特点:
1.String是一个不可变的类,他是由final修饰的。
2.String对象一旦创建,就不能更改它的值。
3.String底层采用的是Unicode国际统一编码。
注意:String的内容是不可变的,但是可以更改它指向的内存地址。
String不可变的原理就是利用了字符串池的概念,字符串池的原理是:
在一个系统中声明的所有的字符串,都会放在同一个字符串池中,给字符串赋值时,首先会查找字符串池中是否已经存在一个和当前字符串内容一致的,如果存在则直接引用,否则就添加。如果给字符串重新赋值,依然会进行上述判断,并且会改变字符串指向的内存地址。
1) java.lang.String: 代表不可变的字符序列。特殊的引用数据类型。
a) String str = "abc"; //最常用
String str2 = new String("abc");
b) 字符串可以使用“+”来连接:String str3 = "abc" + "中国";
也可以用“+”跟其它类型数据进行连接:String str4 = "abc" + 12.345;
c) String类有一个方法length()可以获取它的长度。
String str5 = "salkdf";
str5.length(); // "salkdf".length();
d) 字符串的比较
① == : 比较两个字符串的内存地址。 //用得少
② boolean equals(Object object): 比较的是两个字符串的内容。最常用的方法。
③ boolean equalsIgnoreCase(): 忽略大小写比较两个字符串的内容。
④ int compareTo(String str2): 比较两个字符串的字典顺序。
如果相等,返回0
如果在参数字符串位置之前,返回负数。
如果在参数字符串位置之后,返回正数。
⑤ int compareToIgnoreCase(String str2): 忽略大小写比较两个字符串的字典顺序。
⑥ boolean startsWith(String str): 是否以参数字符串开头
⑦ boolean endsWith(String str): 是否以参数字符串结尾