java.lang.Object
cn.wjybxx.base.BitFlags
比特标记工具类
tips: Commons-Lang3有个
BitField类- 作者:
- wjybxx date - 2023/4/17
-
构造器概要
构造器 -
方法概要
修饰符和类型方法说明static intgetField(int flags, int mask, int offset) static longgetField(long flags, long mask, int offset) static booleanisAllSet(int flags, int mask) 是否设置了所有bitstatic booleanisAllSet(long flags, long mask) 是否设置了所有bitstatic booleanisNotSetAt(int flags, int idx) 是否未设置指定下标的bitstatic booleanisNotSetAt(long flags, long idx) 是否未设置指定下标的bitstatic booleanisSet(int flags, int mask) 是否设置了任意bitstatic booleanisSet(long flags, long mask) 是否设置了任意bitstatic booleanisSetAt(int flags, int idx) 是否设置了指定下标的bitstatic booleanisSetAt(long flags, long idx) 是否设置了指定下标的bitstatic intset(int flags, int mask) 启用指定bitstatic intset(int flags, int mask, boolean enable) 设置指定bit位 -- 全0或全1static longset(long flags, long mask) 启用指定bitstatic longset(long flags, long mask, boolean enable) 设置指定bit位 -- 全0或全1static intsetAt(int flags, int idx, boolean enable) 设置指定下标的bitstatic longsetAt(long flags, long idx, boolean enable) 设置指定下标的bitstatic intsetField(int flags, int mask, int offset, int value) static longsetField(long flags, long mask, int offset, long value) static intunset(int flags, int mask) 删除指定bitstatic longunset(long flags, long mask) 删除指定bitstatic intunsetField(int flags, int mask) static longunsetField(long flags, long mask)
-
构造器详细资料
-
BitFlags
public BitFlags()
-
-
方法详细资料
-
isSet
public static boolean isSet(int flags, int mask) 是否设置了任意bit -
isAllSet
public static boolean isAllSet(int flags, int mask) 是否设置了所有bit -
set
public static int set(int flags, int mask) 启用指定bit -
unset
public static int unset(int flags, int mask) 删除指定bit -
set
public static int set(int flags, int mask, boolean enable) 设置指定bit位 -- 全0或全1 -
isSetAt
public static boolean isSetAt(int flags, int idx) 是否设置了指定下标的bit -
isNotSetAt
public static boolean isNotSetAt(int flags, int idx) 是否未设置指定下标的bit -
setAt
public static int setAt(int flags, int idx, boolean enable) 设置指定下标的bit -
getField
public static int getField(int flags, int mask, int offset) - 参数:
mask- 字段的掩码offset- 需要偏移的bit数
-
setField
public static int setField(int flags, int mask, int offset, int value) -
unsetField
public static int unsetField(int flags, int mask) -
isSet
public static boolean isSet(long flags, long mask) 是否设置了任意bit -
isAllSet
public static boolean isAllSet(long flags, long mask) 是否设置了所有bit -
set
public static long set(long flags, long mask) 启用指定bit -
unset
public static long unset(long flags, long mask) 删除指定bit -
set
public static long set(long flags, long mask, boolean enable) 设置指定bit位 -- 全0或全1 -
isSetAt
public static boolean isSetAt(long flags, long idx) 是否设置了指定下标的bit -
isNotSetAt
public static boolean isNotSetAt(long flags, long idx) 是否未设置指定下标的bit -
setAt
public static long setAt(long flags, long idx, boolean enable) 设置指定下标的bit -
getField
public static long getField(long flags, long mask, int offset) - 参数:
mask- 字段的掩码offset- 需要偏移的bit数
-
setField
public static long setField(long flags, long mask, int offset, long value) -
unsetField
public static long unsetField(long flags, long mask)
-