package com.thealgorithms.bitmanipulation; /* * Author: lukasb1b (https://github.com/lukasb1b) */ public final class SingleBitOperations { private SingleBitOperations() { } /** * Flip the bit at position 'bit' in 'num' */ public static int flipBit(final int num, final int bit) { return num ^ (1 << bit); } /** * Set the bit at position 'bit' to 1 in the 'num' variable */ public static int setBit(final int num, final int bit) { return num | (1 << bit); } /** * Clears the bit located at 'bit' from 'num' */ public static int clearBit(final int num, final int bit) { return num & ~(1 << bit); } /** * Get the bit located at 'bit' from 'num' */ public static int getBit(final int num, final int bit) { return ((num >> bit) & 1); } }