as3 一个有关ByteArray中的writeByte的问题

var a:ByteArray = new ByteArray();
a.writeByte(7821);
a.writeByte(4512);
a.writeByte(31);
trace(a[0], a[1], a[2]);

结果输出:

141 160 31
wirteByte只能写入8位的byte类型的数字,也就是值不能超过255,超过会被截掉。
255的二进制为 1111 1111
7821的二进制为0001 1110 1000 1101,超过了,高八位会截掉,只留下低八位 1000 1101转为十进制就是你那个141
其它的同理


转载于:https://www.cnblogs.com/yjffeng/articles/4691493.html
上一篇:141. 环形链表


下一篇:leetcode 141 环形链表