本帖最后由 位丹丹 于 2012-7-20 09:41 编辑
- byte 类型-1提升了一个int类型 还是-1,是-1的原因是因为在8个1前面补的是1导致的。
- 只要在前面补0,即可以保留原字节数据不变,又可以避免-1的出现。
- 11111111 11111111 11111111 11111111
- &00000000 00000000 00000000 11111111
- -------------------------------------------------------
- 00000000 00000000 00000000 11111111
复制代码 我不明白的是byte的-1提升为int的-1,到底是怎么提升的,原理是什么?是不是byte型的-1提升为int型的值也是-1,所以前面才加24个1吗?
这一点一直想不明白,还望高手指点。
另外-1 & 255 是255,数据不是改变了吗?
|