Java代码测试大端小端
Java果真强大,神马功能的函数都能找到,测试大端小端只需一句话:
if(ByteOrder.nativeOrder()==ByteOrder.BIG_ENDIAN)System.out.println("big endian");else System.out.println("little endian");
ByteOrder属于java.nio.ByteOrder;
那么,ByteOrder是怎么判断大端小端的呢?
public static ByteOrder nativeOrder() {return Bits.byteOrder();}
下面是Bits的byteOrder():
static ByteOrder byteOrder() {if (byteOrder == null)throw new Error("Unknown byte order");return byteOrder;}static {long a = unsafe.allocateMemory(8);try {unsafe.putLong(a, 0x0102030405060708L);byte b = unsafe.getByte(a);switch (b) {case 0x01: byteOrder = ByteOrder.BIG_ENDIAN; break;case 0x08: byteOrder = ByteOrder.LITTLE_ENDIAN; break;default:assert false;byteOrder = null;}} finally {unsafe.freeMemory(a);}}
看完这段代码,应该就懂了~
Java代码测试大端小端相关推荐
- java 大端模式_记住!大端小端
关于大端和小端,自己已经记了很多次了,可每次都忘,今天创新工场笔试,第一道题就是关于大端小端的知识,可惜,自己又忘了,怎么回事,说到底,是自己同时记大端和小端,导致容易混淆,现在只记小端了:小端,是数 ...
- socket 大端 小端 转换 (转)《二》
http://blog.csdn.net/kukumouse/article/details/2270356 (1)对于位域结构中的变量来说,其长度不能跨越字节,也就是说不能超过8位.当然如果设置空白 ...
- 大端小端模式(俗称大尾小尾模式)
转自百度百科 http://baike.baidu.com/link?url=uKVPtSaiXzEAXJSHfiya1Wj_oITw-t8MpHkJxJvMb0Eu_WXo28czAHLY-FOqj ...
- 栈增长方向与大端/小端问题
转:http://www.cnblogs.com/xkfz007/archive/2012/06/22/2558935.html 栈增长和大端/小端问题是和CPU相关的两个问题. 在内存管理中,与栈对 ...
- c语言之大端小端问题
这就是字节序问题:数据在计算机内存中存储或者网络传输时各字节的存储顺序 通常来说就分为两种情况: 一种是大端(big-endian):高字节(高位)存放在低地址,低字节(低位)存在高地址 另外一种小端 ...
- 二进制、16进制、大端小端
16进制的使用 在开发过程中,写文件是常有的事,如果写的内容是文本,随便用一个记事本软件打开即可查看内容是否正确,如果写的是音频文件,就要用音频播放器来查看,如果是视频文件,就要用视频播放器来查看.. ...
- 大端小端存储模式详解及判断方法
文章目录 大小端模式的概念 两种模式出现原因 两种模式的优劣 大小端的应用情景 判断机器的字节序 大小端模式的概念 当我们查看数据在内存中的存储情况时,我们经常会发现一个很奇怪的现象,什么现象呢? i ...
- C语言中低位存放,C语言 大端小端存储解析以及判断方法
当我们在C语言中查看数据在内存中的存储时,我们经常会发现一个很奇怪的现象,什么现象呢? 例如下面这段代码 int main() { int i = 1; return 0; } 数据在内存中的存放方式 ...
- C语言程序设计 | 大端小端存储解析以及判断方法
当我们在C语言中查看数据在内存中的存储时,我们经常会发现一个很奇怪的现象,什么现象呢? 例如下面这段代码 int main() {int i = 1;return 0; } 数据在内存中的存放方式似乎 ...
最新文章
- 1282. Game Tree
- 成功爬取-CVE-2018-15982漏洞复现【博客园】【1】
- SBB:不同植被土壤中细菌古菌的群落分布模式比较
- MySQL学习笔记04【数据库的查询操作、今日内容、表的约束】
- javascript 计算两个坐标的距离 米_土方全面应用计算
- openwrt patch文件怎么用_openwrt 打补丁方式修改内核源码
- Office 365有个AI「工作场所分析」掌握组织人力资源
- Hexo+Github博客搭建教程
- Linux开源字体——“文泉驿正黑”的安装命令
- 大学计算机课程日记,大学计算机实习日记
- java裁剪图片_java实现图片的缩放和裁剪
- NOIP模拟系列 [BZOJ4668]冷战
- linux 查看磁盘分区格式
- 汽车4S店业务管理软件
- oracle 11g dul,【学习笔记】Oracle DUL 11 兼容Oracle 12C数据库的DUL工具最新版本
- 4.23以上UE4 版本HTC-VIVE VR项目打包的注意事项
- JMeter-16-循环控制器
- 搜狗浏览器默认皮肤无法修改问题
- WINDOWS 疑难杂症
- 资本市场低迷:快狗打车上市首日跌22% 市值仍超百亿港元