Java中的int和long是兩種不同的數據類型,分別代表整數和長整數。它們的長度(即占用的存儲空間)是不同的。
int類型使用32位二進制補碼表示,其取值范圍為-2,147,483,648到2,147,483,647,可以存儲的最大值是2147483647。因為int類型是32位的,所以其長度為4字節。
int i = 2147483647; System.out.println(i);
而long類型使用64位二進制補碼表示,其取值范圍為-9,223,372,036,854,775,808到9,223,372,036,854,775,807,可以存儲的最大值是9223372036854775807。因為long類型是64位的,所以其長度為8字節。
long l = 9223372036854775807L; System.out.println(l);
需要注意的是,在賦值long類型時,要在值后面加上“L”或“l”,否則編譯器會將該值解釋為int類型,從而導致編譯錯誤。
總之,int和long是Java中常用的整型數據類型,它們的長度分別為4字節和8字節,存儲的取值范圍和最大值也不同。在使用和賦值時,需要注意其長度和表示范圍,避免程序出錯。