public class AuthoritySolution {
private static final long m_Read = 0x00000001; // 64 byte
private static final long m_Write = 0x00000002;
public static boolean canRead(long role) {
long t = role & m_Read;
return t != 0;
}
public static boolean canWrite(long role) {
long t = role & m_Write;
return t != 0;
}
public static boolean canReadAndWrite(long role) {
long t = role & (m_Write | m_Read);
return t != 0;
}
public static void main(String[] abc){
final long roler1=0x00000003;
System.out.println("roler1 can read?"+canRead(roler1));
System.out.println("roler1 can write?"+canWrite(roler1));
System.out.println("roler1 can read and write?"+canReadAndWrite(roler1));
final long roler2=0x00000004;
System.out.println("roler2 can read?"+canRead(roler2));
System.out.println("roler2 can write?"+canWrite(roler2));
System.out.println("roler2 can read and write?"+canReadAndWrite(roler2));
}
}