java是一门纯粹的面向对象的语言,而它却提供了八个基本数据类型,这是为了提高代码的性能,因为基本数据类型是放在栈内存中,对象放在堆内存,但是java也提供了基本数据类型相对应的包装类。
基本类型 -- 包装类:
1)byte -- Byte;
2)short -- Short;
3)int -- Integer;
4)long -- Long;
5)float -- Float;
6)double -- Double;
7)char -- Character;
8)boolean -- Boolean。
它们的用法都差不多,就举两个来进行讲述。
一、Integer
int的包装类。
1、构造方法:
1)public Integer(int value)
2)public Integer(String s) 注意:s这个字符串必须是由数字字符组成,例如:"123".
结果:
2、成员方法
1)String.valueOf(number):int类型转String类型
2)Integer.parseInt(s):String类型转int类型,注意s也字符串必须有数字字符组成
结果:
3)public static String toBinaryString(int i):int类型是十进制数,十进制转二进制
4)public static String toOctalString(int i):十进制转八进制
5)public static String toHexString(int i):十进制转十六进制
结果:
从JDK5起,java提供了自动装箱和自动拆箱的功能。自动装箱:把基本数据类型数据转成包装数据类型;自动拆箱:把包装类类型转换成基本类型
结果:
二、Character
char的包装类。
1、构造方法:
1)Character(char value)
2、成员方法:
1)public static boolean isUpperCase(char ch):判断给定的字符是否是大写字符
2)public static boolean isLowerCase(char ch):判断给定的字符是否是小写字符
3)public static boolean isDigit(char ch):判断给定的字符是否是数字字符
4)public static char toUpperCase(char ch):把给定的字符转换为大写字符
5)public static char toLowerCase(char ch):把给定的字符转换为小写字符
结果:
三、StringBuffer
StringBuffer是字符串缓冲区对象,我们之前说过,String一旦赋值就不能改变,而且做字符串拼接的时候,会在常量池产生新的数据,之前的数据还存在,浪费内存,所以java提供了StringBuffer来解决这一现象。StringBuffer是线程同步的安全的(多线程的时候在讲述),StringBuilder和StringBuffer差不多,不过它是不同步线程不安全的。
1、构造方法:
1)public StringBuffer():无参构造方法;
2)public StringBuffer(int capacity):定容量的字符串缓冲区对象;
3)public StringBuffer(String str):指定字符串内容的字符串缓冲区对象。
结果:
2、成员方法
1)public int capacity():返回当前容量;
2)public int length():返回长度(字符数)。
默认的容量是16,可以在创建对象时指定容量大小,有内容时,原始容量大小会加上长度。
3)public StringBuffer append(String str):append()有很多重载方法,可以把任意类型数据添加到字符串缓冲区里面,并返回字符串缓冲区本身,这就值列出了形参为字符串的方法
4)public StringBuffer insert(int offset,String str):在指定位置把任意类型的数据插入到字符串缓冲区里面,并返回字符串缓冲区本身
结果:
5)public StringBuffer deleteCharAt(int index):删除指定位置的字符,并返回本身;
6)public StringBuffer delete(int start,int end):删除从指定位置开始指定位置结束的内容,并返回本身;
7)public StringBuffer replace(int start,int end,String str):从start位置开始到end位置用str替换
结果:
8)public StringBuffer reverse():反转,返回其本身
结果:
9)public String substring(int start):从start位置开始截取,直到结束,返回字符串。
10)public String substring(int start,int end):从start位置到end位置截取,返回字符串。
结果:
四、Math
Math是用于数学运算的类,它是一个final修饰的类,不能被继承,Math类中的成员方法都是静态(static修饰的)方法。
1)成员变量:
public static final double E:自然对数的基数。
public static final double PI:圆周长与其直径的比率。
结果:
2) 成员方法:
public static int abs(int a):获取a的绝对值,这个方法还有许多重载方法。以下的方法基本上都有重载方法,就不一一举例了
public static double ceil(double a):向上取整
public static double floor(double a):向下取整
结果:
public static int max(int a,int b):获取a和b两个数中的最大值
public static int min(int a,int b):获取a和b两个数中的最小值
public static double pow(double a,double b):a的b次幂
public static double random():随机数 [0.0,1.0),0.0到1.0之间,包含0.0不包含1.0
public static int round(float a): 四舍五入
public static double sqrt(double a):正平方根
结果:
五、System
System类包含几个有用的类字段和方法。它不能被实例化(new)。
1)成员方法:
public static void gc():运行垃圾回收器。
结果:
public static long currentTimeMillis():返回以毫秒为单位的当前时间
public static void exit(int status):终止当前正在运行的 Java 虚拟机。参数用作状态码;根据惯例,非 0 的状态码表示异常终止。
public static void arraycopy(Object src,int srcPos,Object dest,int destPos,int length):从指定源数组中复制一个数组,复制从指定的位置开始,到目标数组的指定位置结束。
结果:
六、Date和DateFormat
Date表示特定的瞬间,精确到毫秒。
1)构造方法:
Date():根据当前的默认毫秒值创建日期对象
Date(long date):根据给定的毫秒值创建日期对象
2)成员方法:
public long getTime():获取时间,以毫秒为单位
public void setTime(long time):设置时间
结果:
DateForamt可以进行日期和字符串的格式化和解析,但是由于是抽象类,所以使用具体子类SimpleDateFormat类。
1)构造方法:
SimpleDateFormat():默认模式;
SimpleDateFormat(String pattern):给定的模式。
格式设置:y表示年、M表示月、d表示日、H表示时、m表示分钟、s表示秒
2)成员方法:
public final String format(Date date):日期格式化成字符串;
public Date parse(String source):字符串解析成日期。
结果:
公众号二维码