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
