使用位运算控制权限
位运算,就是将10进制数转换成2进数,在进行操作的运算。
假设系统有增加的操作,其权限值位1024(1<<10)。有删除的操作2048(1<<11)。有查询的操作4096(1<<14)。而我的值权限值为7176(1<<10 | 1<<11 | 1<<12 | 1<<13)。
7176 & 1024 值不等于0,则有增加的权限。
7176 & 16384(即1<<14) 值为0,则没有查询的权限。
限制:因为权限值是靠移位运算的。而且只能32位,即0到31,因为1<<0等于1<<32。所以最多只能有32个不同的操作权限。