目录
1.包装类
包装类的层次结构
自动装箱与自动拆箱
2.String类
String常用方法
字符串比较
StringBuffer类
常用方法
StringBuffer类
3.math类
常量:
常用方法:
1.包装类
Java是一种纯面向对象语言,但是java中有8种基本数据类型,破坏了java为纯面向对象的特征。为了承诺在java中一切皆对象,java又给每种基本数据类型分别匹配了一个类,这个类我们称之为包装类/封装类。
注意:每个基本数据类型都有一个与之匹配的包装类。
注意:int的包装类的写法为Integer、char的包装类的写法是:Character
其余基本数据类型的包装类均是基本类型的首字母大写。
包装类的层次结构
自动装箱与自动拆箱
自jdk1.5开始,java增加的对基本数据类型的自动装箱和自动拆箱操作。
java编译器在编译时期会根据源代码的语法来决定是否进行装箱或拆箱。
- 自动装箱:可以直接把一个基本数据类型赋值给包装类
例如: Integer i1 = 10; //自动装箱操作
- 自动拆箱:可以直接把一个包装类对象,赋值给基本类型
例如:int a = new Integer(3); //自动拆箱。
自动装箱和自动拆箱,简化了对包装类的操作。
2.String类
String是不可变类, 即一旦一个String对象被创建, 包含在这个对象中的字符序列是不可改变的, 直至该对象被销毁。
String类是final类,不能有子类。
String常用方法
- String concat(String str) 在原有字符串的尾部添加参数字符串,返回一个新的字符串(总是堆内存中的对象),如果str的长度为0,则返回原字符串。str不能为空。
- String subString(int beginIndex) 获得从beginIndex开始到结束的子字符串。( 包括beginIndex位置的字符)
- public String toLowerCase() 把字符串中的英文字符全部转换为小写字符,返回值为装换后的新的字符串。
- public String toUpperCase() 把字符串中的英文字符全部转换为大写字符,返回值为装换后的新的字符串。
- public String trim() 把字符串中的首尾空白字符去掉
- public String replace(CharSequence target, CharSequence replacement) 使用指定的字面值替换序列替换此字符串所有匹配字面值目标序列的子字符串
- public String replace(char oldChar,char newChar)返回一个新的字符串,它是通过newChar替换字符串中出现的所有的oldChar得到的。
- public String replaceAll(String regex,String replacement)使用给定的replacement替换此字符串所有匹配给定的正则表达式的子字符串。
- public replaceFirst(String regex,String replacement)使用给定的replacement替换此字符串匹配给定的正则表达式的第一个字符串。
字符串比较
1.”==”表示判断该两个字符串是否为同一对象,即在内存中的地址是否一样。如果一样则返回true 否则返回false; 和我们通常的是否为同一对象的是一样的。
2.boolean equals(Object anObject) 将此字符串与指定的对象比较。注意此时比较的是内容是否相等(字符串类对此方法进行了覆写)。
3.boolean equalslgnoreCase
(String
anotherString)
将此String
与另一个String
比较,不考虑大小写。例如:”abc”.equalslgnoreCase
(“AbC”); // true
4.int compareTo(String value) 按字典顺序比较两个字符串。如果两个字符串相等,则返回0;如果字符串在参数值之前,则返回值小于 0;如果字符串在参数值之后,则返回值大于 0
5.int compareToIgnoreCase(String val) 按字典顺序比较两个字符串,不考虑大小写
6.boolean startsWith(String value) 检查一个字符串是否以参数字符串开始。
7.boolean endsWith(String value) 检查一个字符串是否以参数个字符串结束。
StringBuffer类
StringBuffer代表可变的字符序列。
StringBuffer称为字符串缓冲区,它的工作原理是:预先申请一块内存,存放字符序列,如果字符序列满了,会重新改变缓存区的大小,以容纳更多的字符序列。StringBuffer是可变对象,这个是String最大的不同
常用方法
1.StringBuffer append(String str);将指定的字符串追加到此字符序列
2.StringBuffer insert(int offset,String str),将字符串str插入此字符序列指定位置中
3.int length();确定StringBuffer对象的长度
4.void setCharAt(int pos,char ch);使用ch指定的新值设置pos指定的位置上的字符
5.String toString();转换为字符串形式
6.StringBuffer reverse();反转字符串
7.StringBuffer delete(int start,int end);此方法将删除调用对象从start位置开始知道end指定的索引-1位置的字符序列
8.StringBuffer replace(int start,int end,String s);此方法使用一组字符替换另一组字符。将用替换字符串从start指定位置开始替换,直到end指定的位置结束
StringBuffer类
StringBuilder与StringBuffer的用法完全一致,唯一的区别是StringBuffer是线程安全的,而StringBuilder不是线程安全的。所以StringBuilder的性能要比StringBuffer要好。单线程推荐使用StringBuilder,多线程使用StringBuffer。
3.math类
常量:
E:比任何其他值都更接近 e(即自然对数的底数)的 double 值
PI:比任何其他值都更接近 pi(即圆的周长与直径之比)的 double 值。
常用方法: