StringBuilder类与StringBuffer类的异同
StringBuffer,StringBuilder 可以改变变字符串的长度和内容,是一个字符串缓冲区,
在做大量字符串拼接的时候不会开辟新的空间。
StringBuffer的所有方法都被关键字synchronized修饰,也就是说它是线程安全的,效率低
StringBuilder线程不安全的,效率高
包装类
基本数据类型的包装类可以使用基本类型对应的类的相关成员变量和成员方法,相比于基本数据类型,包装类更易于使用。
基本类型 | 大小 | 包装类型 |
---|---|---|
byte | 8bit | Byte |
short | 16bit | Short |
int | 32bit | Integer |
long | 64bit | Long |
float | 32bit | Float |
double | 64bit | Double |
boolean | \ | Boolean |
char | 16bit | Character |
自动拆装箱
自动拆装箱是JDK5.0以后的特性。
自动拆箱: 将包装类转换成包装类对应的基本数据类型:
int b = a.intValue()
自动装箱: 将基本数据类型转换成对应的包装类类型 :
int a = Integer.valueOf(10)
Character类
Character类是char对应的包装类。
构造方法
public Character(char value)
常用静态成员方法
方法 | 返回值类型 | 功能 |
---|---|---|
isUpperCase(char ch) | boolean | 判断字符是否是大写 |
isLowerCase(char ch) | boolean | 判断字符是否是小写 |
isDigit(char ch) | boolean | 判断字符是不是数字 |
toUpperCase(char ch) | char | 将输入的字符转为大写 |
toLowerCase(char ch) | char | 将输入的字符转为小写 |
Math类
Math类概述:Math 类涵盖了很多执行基本数学运算的方法, 是一个工具类。
常用静态方法
方法 | 返回值类型 | 功能 |
---|---|---|
abs(int/double/float/long a) | int/double/float/long | 返回a的绝对值 |
max(int a, int b) | int | 返回a、b之间最大的数(a、b的类型需一致,可以为double、float、long类型,返回值与输入值类型一致) |
min(int a, int b) | int | 返回a、b之间最小的数(a、b的类型需一致,可以为double、float、long类型,返回值与输入值类型一致) |
ceil(double a) | double | 返回a向上取整的数 |
floor(double a) | double | 返回a向下取整的数 |
pow(double a, double b) | double | 返回a的b次幂的值 |
sqrt(double a) | double | 返回a的平方根的值 |
round(double/float a) | long/int | 返回a的四舍五入后的值 |
random() | double | 返回一个[0.0, 1.0)之间的double类型的小数(包含0.0,不包含1.0) |