摘要:
在Java中,位运算符有很多,例如与(&)、非(~)、或(|)、异或(^)、移位(<<和>>)等。这些运算符在日常编码中很少会用到。 在下面的一个例子中,会用到位掩码(BitMask),其中包含大量的位运算。不只是在Java中,其他编写语言中也是可以使用的。 例如,在一个系统中,用户一般有查询(Se 阅读全文
摘要:
package chatroom; import io.netty.channel.Channel;import io.netty.channel.ChannelHandlerContext;import io.netty.channel.SimpleChannelInboundHandler;im 阅读全文
摘要:
1.自定义协议客户端与服务器收发逻辑 Netty中自带了多种编解码器,在项目中更常用的是自定义协议进行通信,此时需要自行处理 半包问题,通过继承ByteToMessageDecoder可以方便的解决这个问题。 服务器代码: Server main: public class SocketServer 阅读全文
摘要:
开发领域因为与硬件的联系更紧密,所以位操作运算应用的更普遍。Java 因为面向对象的特性很多时候不需要接触位操作,但是在某些特定场景下,巧妙运用位操作,能够起到非常高效的的表现。这篇博文不谈应用,只详细讲解与位操作有关的知识点。 基础大讲堂所有数值都是2进制软件开发者都知道 10 进制、16 进制、 阅读全文
摘要:
位运算介绍程序中的所有数在计算机内存中都是以二进制的形式储存的。位运算就是直接对整数在内存中的二进制位进行操作。位运算虽说是语言的基础,但是应用层基本很少有涉及到此,很多开发同学可能了解的不是蛮清楚,本文只对算法用的位运算做一个简单介绍,其他运算符将一笔带过,感兴趣的可以在好好的深入学习一下 "^" 阅读全文
摘要:
基础内容简介 在做转换之前先要明确几个简单的概念。首先本文是以java为语言,以int为例子。 long数据类型在原理上是一致的。 1 int 在java中是32位, byte是8位。 2 原码,反码,补码简介 原码:就是二进制码,最高位为符号位,0表示正数,1表示负数,剩余部分表示真值。 反码:在 阅读全文