Byte类是基本数据类型byte的包装类,该类包含一个byte类型的成员变量,该类在Java.lang包下。
Byte对象的创建
可以通过byte类型和字符串类型来创建Byte对象。创建代码如下:
// 使用new运算符创建,传入参数为byte类型的整数
Byte number1 = new Byte((byte) 16);
// 使用new运算符创建,传入参数为数字型字符串
// 数字型字符串表示的数值要在BYTE的取值范围内
Byte number2 = new Byte("16");使用new运算符创建Byte对象时,传入整数时需要把整数强制转换为Byte类型,整数数值常量默认类型是int类型。传入数字型字符串时,数字型字符串表示的数值要在BYTE的取值范围内。返回基本数值数据类型
实例化的Byte对象可以返回基本数据类型表示的数值,返回的基本数据类型包括int、double、byte等类型。
Byte number1 = new Byte((byte)20); int intNum = number1.intValue(); double doubleNum = number1.doubleValue(); byte byteNum = number1.byteValue();
Byte对象和String对象的转换
Byte对象也提供了toString()方法,返回表示该Byte数值的String对象。
Byte number1 = new Byte((byte)20); String strNumber = number1.toString();
number1调用toString()方法返回表示该Byte数值的String对象。
Byte对象同时提供了parseByte()方法,将字符串对象转换为byte类型,parseByte()方法是Byte类的静态方法,可以直接通过类名调用。
byte byteValue = Byte.parseLong("89");
上面的代码调用Byte类的parseByte()方法,将字符串转换为byte类型。
判断两个Byte对象是否相等
Byte类重写了Object类的equals()方法,可以判断当前Byte对象表示的数值与指定的Byte对象表示的数值是否相等。
Byte number1 = new Byte((byte)35);
Byte number2 = new Byte("35");
boolean bEaual = number1.equals(number2);number1调用equals()方法判断与number2的表示的数值是否相等。
判断Byte类型取值范围
Byte类提供了四个常量来表示byte类型取值范围、byte值的二进制位数、Class实例类型。
MAX_VALUE
byte类型可取的最大值,即127。
MIN_VALUE
byte类型可取的最小值,即-128。
SIZE
byte值的二进制位数。
TYPE
Class实例类型,该值为byte。
案例1:用不同方式创建Byte对象、字符串和Byte类型的转换、判断两个Byte对象的值是否相等、输出byte取值范围的最大值和最小值。
在PBaseUnit15项目unit包下,创建Java类ByteSample。代码如下:
/**
* @Title: ByteSample.java
* @Package unit
* @Description: Java基础知识课程案例
* @author 编程训练营
* @date
* @version V1.0
*/
package unit;
/**
* @ClassName: ByteSample
* @Description: 基本数据类型包装类(Byte类)案例1
* @author 编程训练营
* @date
*
*/
public class ByteSample {
/**
* @Title: main
* @Description: Java程序入口main方法
* @param @param args 参数
* @return void 返回类型
* @throws
*/
public static void main(String[] args) {
// 使用new运算符创建,传入参数为byte类型的整数
Byte number1 = new Byte((byte) 16);
// 使用new运算符创建,传入参数为数字型字符串
// 数字型字符串表示的数值要在BYTE的取值范围内
Byte number2 = new Byte("16");
// Byte对象转换为字符串
System.out.println("number1的值为:" + number1.toString());
// 字符串转换为byte类型
byte byteValue = Byte.parseByte("21");
System.out.println("byteValue的值为:" + byteValue);
// 比较两个Byte的值是否相等
boolean bEaual = number1.equals(number2);
if (bEaual) {
System.out.println("number1等于number2");
} else {
System.out.println("number1不等于number2");
}
// 输出Byte取值范围和位数
System.out.println("byte类型可取的最大值为:" + Byte.MAX_VALUE);
System.out.println("byte类型可取的最小值为:" + Byte.MIN_VALUE);
System.out.println("byte类型二进制位数为:" + Byte.SIZE);
}
}程序执行结果如下图所示:
