前言
今天在若依登录代码里面,看到获取IP归属地的代码,其中有先校验是否为 内网IP(127..0.0.1;192.168.x.x)
其中& 0xFF 代码,记录一下其作用。 本文主要是针对作用进行阐述,底层原理可以看推荐文章。
作用
首先我们要知道,0x表示16进制,对应0xff在其他进制的值为:
取得低八位
0xff 表示为二进制 11111111
当0xff 与0xff进行与操作时 结构为0xff,保持不变
假设:265 与0xff进行与操作 明细:
二进制为:0001 0000 1001
低八位:0000 1001 对应十进制为:9
当把数值l 取低八位后,转int 再转byte,是因为byte占一个字节,方便转换为byte类型。
而ip最大数值为255 则可以拿到数据,防止转为long类型 导致数据发生转变
保证补码的一致性
这里其实不是很懂,麻烦有了解的朋友,一起沟通下
欢迎大家反馈