/*** 二进制转十进制
*
*@parambinaryNumber
*@return
*/
public static int binaryToDecimal(intbinaryNumber) {int decimal = 0;int p = 0;while (true) {if (binaryNumber == 0) {break;
}else{int temp = binaryNumber % 10;
decimal+= temp * Math.pow(2, p);
binaryNumber= binaryNumber / 10;
p++;
}
}returndecimal;
}/*** 十进制转二进制
*
*@paramn
*@return
*/
public static String decimalToBinary(intn) {
String str= "";while (n != 0) {
str= n % 2 +str;
n= n / 2;
}returnstr;
}/*** @Description: 十进制转换成二进制 ()
*@paramdecimalSource
*@returnString*/
public staticString decimalToBinary(BigInteger decimalSource) {//BigInteger bi = new BigInteger(String.valueOf(decimalSource));//转换成BigInteger类型
return decimalSource.toString(2); //参数2指定的是转化成X进制,默认10进制
}/*** @Description: 二进制转换成十进制
*@parambinarySource
*@returnint*/
public staticBigInteger binaryToDecimal(String binarySource) {
BigInteger bi= new BigInteger(binarySource, 2); //转换为BigInteger类型//return Integer.parseInt(bi.toString());//转换成十进制
return bi; //转换成十进制
}/*** BitSet转二进制
*
*@parambitSet
*@return
*/
public staticString bitSetToBinary(BitSet bitSet) {
StringBuilder stringBuilder= newStringBuilder();for (int i = 0; i < bitSet.length(); i++) {if(bitSet.get(i)) {
stringBuilder.append("1");
}else{
stringBuilder.append("0");
}
}returnstringBuilder.toString();
}/*** 二进制转BitSet
*
*@parambinary
*@return
*/
public staticBitSet binaryToBitSet(String binary) {
BitSet bitSet= newBitSet();for (int i = 0; i < binary.length(); i++) {
String c=String.valueOf(binary.charAt(i));if ("1".equals(c)) {
bitSet.set(i,true);
}
}returnbitSet;
}