//package com.nowjava;
public class Main {/**来 自 NowJava.com - 时代Java**/
public static void main(String[] argv) throws Exception {
byte value = 2;
int bit = 2;
boolean on = true;
System.out.println(setBit(value, bit, on));
}
/**
* sets the specified bit to a value
* @param value the base value
* @param bit the bit number
* @param on set it to on or not
* @return value with the bit set
*/
public static byte setBit(byte value, int bit, boolean on) {
if (bit < 0 || bit >= 8)
throw new IllegalArgumentException("invalid bit position");
byte pos = (byte) (1 << bit);
if (on)
return (byte) (value | pos);
else
return (byte) (value & ~pos);
}
/** 来自 时 代 Java - nowjava.com**/
/**
* sets the specified bit to a value
* @param value the base value
* @param bit the bit number
* @param on set it to on or not
* @return value with the bit set
*/
public static short setBit(short value, int bit, boolean on) {
if (bit < 0 || bit >= 16)
throw new IllegalArgumentException("invalid bit position");
short pos = (short) (1 << bit);
if (on)
return (short) (value | pos);
else
return (short) (value & ~pos);
}
/**
* sets the specified bit to a value
* @param value the base value
* @param bit the bit number
* @param on set it to on or not
* @return value with the bit set
*/
public static int setBit(int value, int bit, boolean on) {
if (bit < 0 || bit >= 32)
throw new IllegalArgumentException("invalid bit position");
int pos = 1 << bit;
if (on)
return value | pos;
else
return value & ~pos;
}
/**
* sets the specified bit to a value
* @param value the base value
* @param bit the bit number
/**代码未完, 请加载全部代码(NowJava.com).**/