java的基本数据类型中有byte这种,byte存储整型数据,占据1个字节(8 bits),能够存储的数据范围是-128~+127。
Byte是java.lang中的一个类,目的是为基本数据类型byte进行封装。封装有几种好处,比如:1. Byte可以将对象的引用传递,使得多个function共同操作一个byte类型的数据,而byte基本数据类型是赋值之后要在stack(栈区域)进行存储的;2. 定义了和String之间互相转化的方法。Byte的大小是8个字节。因为Byte是需要通过关键字new来申请对象,而此部分申请出来的对象放在内存的heap(堆区域)。
package BasicKnowledge.Testlang; public class ByteTest { public static void main(String args[]) { Byte by1 = new Byte("123"); Byte by2 = new Byte("123"); int length = by1.SIZE; int max = by2.MAX_VALUE; int min = by2.MIN_VALUE; if(by1 == by2) { System.out.println("Operation '=' compares the reference of Byte objects and equal"); }else System.out.println("Operation '=' compares the objects of Byte objects and not equal"); if(by1.equals(by2)) { System.out.println("Function 'equals()' compares the value of Byte objects and equal"); }else System.out.println("Function 'equals()' compares the value of Byte objects and not equal"); Byte by3 = by1; if(by3 == by1) { System.out.println("Operation '=' compares the reference of Byte objects and equal"); }else System.out.println("Operation '=' compares the reference of Byte objects and not equal"); System.out.println(by1); System.out.println(by2); System.out.println("The length is "+length); System.out.println("MAX:"+max+" MIN"+min); byte temp = (byte)241; // 241的二进制表示为11110001(补码),其中第一位为符号位,那么剩余的计算结果为15,最终结果为-15 System.out.println(temp); } }
输出结果:
Operation '=' compares the objects of Byte objects and not equal
Function 'equals()' compares the value of Byte objects and equal
Operation '=' compares the reference of Byte objects and equal
123
123
The length is 8
MAX:127 MIN-128
-15