一、大小端模式概念
Java中命名的數據在系統的內存中的存放方式分爲大端、小端模式。如下圖:
int a = 0x12345678;
不同的模式存放方式:
三、Java測試系統大小端
/**
* 測試系統的大小端模式
* 大端模式:數據按照順序存放在內存字節中
* 小端模式:數據和大端模式存放數據方式相反
* 如int值12345678,佔用內存4個字節,每個字節佔用8個位,每個數字佔用4個位;
* 大端模式內存存放順序:12、34、56、78
* 小端模式:78、56、34、12
*
* @return
*/
public static boolean isBigSystemBigLittleEndian () {
/*
//Java提供現成的測試方法
if(ByteOrder.nativeOrder() == ByteOrder.BIG_ENDIAN) {
return true;
}
else {
return false;
}
*/
int a = 0x12345678;
byte b = (byte)a;
return b == 0x12;
}
說明:Java提供現成技術獲取系統採用大小端模式,如代碼中的ByteOrder類,底層依賴Java的Unsafe類