美文网首页
巩固一下java中经常用到的运算

巩固一下java中经常用到的运算

作者: 上帝死了众神在堕落 | 来源:发表于2024-04-28 15:06 被阅读0次

public class NewPermission {
// 是否允许查询,二进制第1位,0表示否,1表示是
public static final int ALLOW_SELECT = 1 << 0; // 0001

// 是否允许新增,二进制第2位,0表示否,1表示是
public static final int ALLOW_INSERT = 1 << 1; // 0010

// 是否允许修改,二进制第3位,0表示否,1表示是
public static final int ALLOW_UPDATE = 1 << 2; // 0100

// 是否允许删除,二进制第4位,0表示否,1表示是
public static final int ALLOW_DELETE = 1 << 3; // 1000

// 存储目前的权限状态
private int flag;

/**
 *  重新设置权限
 */
public void setPermission(int permission) {
    flag = permission;
}

/**
 *  添加一项或多项权限
 */
public void enable(int permission) {
    flag |= permission;
}

/**
 *  删除一项或多项权限
 */
public void disable(int permission) {
    flag &= ~permission;
}

/**
 *  是否拥某些权限
 */
public boolean isAllow(int permission) {
    return (flag & permission) == permission;
}

/**
 *  是否禁用了某些权限
 */
public boolean isNotAllow(int permission) {
    return (flag & permission) == 0;
}

/**
 *  是否仅仅拥有某些权限
 */
public boolean isOnlyAllow(int permission) {
    return flag == permission;
}

}

相关文章

  • 程序里的运算不止有加减乘除

    java零基础入门-核心语法篇(五) 运算符 类型转换 运算符 运算符很重要,我们会在业务中经常用到运算符来帮助我...

  • Java8时间常用操作

    一、Java8时间常用操作 前言:时间操作在开发中经常被使用到,最近项目是用Java8开发,因此总结一下时间操作常...

  • Java移位运算

    背景 java或android源码中经常会使用移位运算来代替乘除运算,因为移位运算的性能比乘除运算的高(PS:对于...

  • Swift运算符重载

    我们在开发中经常用到的运算符有 + , - ,*, /,+=,-=,>,<,>=,<= == 等这些,用于计算或...

  • Android JNI NDK开发教程:JNI NDK概述《一》

    简介 最近项目中经常使用到JNI,在这里记录总结一下。 JNI是什么? JNI(Java Native Inter...

  • iOS学习之UICollectionView

    今天,抽空巩固了一下UICollectionview这个UI控件。UICollectionview控件也是开发中经...

  • 476. Number Complement

    有想法,但是没有这个简练 Java,用到了库函数 注意这里+运算优先于<<运算,所以要加括号。

  • instanceof /==/equals区别

    java中经常遇到判断对象是否一致的场景,这里记录一下常用的三个关键字(或运算符)的区别。 instanceof:...

  • Java基础面试题

    符号 ~ 输出是什么? “~” 是位运算符,“非”的意思。平时项目中用到位运算符的时候的确很少:Java 运算符(...

  • Java-泛型

    今天记录一下Java中的泛型,毕竟大家在项目中经常用到或者看到过。参考:https://www.jianshu.c...

网友评论

      本文标题:巩固一下java中经常用到的运算

      本文链接:https://www.haomeiwen.com/subject/tcizxjtx.html