博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Java 二进制和十进制互转,二进制和BitSet互转
阅读量:5081 次
发布时间:2019-06-12

本文共 2450 字,大约阅读时间需要 8 分钟。

/**     * 二进制转十进制     *      * @param binaryNumber     * @return     */    public static int binaryToDecimal(int binaryNumber) {        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++;            }        }        return decimal;    }    /**     * 十进制转二进制     *      * @param n     * @return     */    public static String decimalToBinary(int n) {        String str = "";        while (n != 0) {            str = n % 2 + str;            n = n / 2;        }        return str;    }        /**      * @Description: 十进制转换成二进制 ()      * @param decimalSource      * @return String       */       public static String decimalToBinary(BigInteger decimalSource) {  //         BigInteger bi = new BigInteger(String.valueOf(decimalSource));  //转换成BigInteger类型           return decimalSource.toString(2);  //参数2指定的是转化成X进制,默认10进制       }              /**      * @Description: 二进制转换成十进制       * @param binarySource      * @return int       */       public static BigInteger binaryToDecimal(String binarySource) {           BigInteger bi = new BigInteger(binarySource, 2);    //转换为BigInteger类型  //         return Integer.parseInt(bi.toString());     //转换成十进制           return bi;     //转换成十进制       }          /**         * BitSet转二进制         *          * @param bitSet         * @return         */        public static String bitSetToBinary(BitSet bitSet) {            StringBuilder stringBuilder = new StringBuilder();            for (int i = 0; i < bitSet.length(); i++) {                if (bitSet.get(i)) {                    stringBuilder.append("1");                } else {                    stringBuilder.append("0");                }            }            return stringBuilder.toString();        }        /**         * 二进制转BitSet         *          * @param binary         * @return         */        public static BitSet binaryToBitSet(String binary) {            BitSet bitSet = new BitSet();            for (int i = 0; i < binary.length(); i++) {                String c = String.valueOf(binary.charAt(i));                if ("1".equals(c)) {                    bitSet.set(i, true);                }            }            return bitSet;        }

 

转载于:https://www.cnblogs.com/BobXie85/p/8884026.html

你可能感兴趣的文章
HDU:Integer Inquiry
查看>>
你真的很了解HTML标签吗? 试试这个超异类的HTML标签小测验吧!
查看>>
Javascript MVC架构之旅
查看>>
CollectionView Header And Footer 的使用
查看>>
JVM之深入浅出之垃圾收集算法
查看>>
选择工作 回溯搜索
查看>>
AFN-上传文件
查看>>
序列化
查看>>
MarkMan – 马克鳗,让设计更有爱!
查看>>
WPF去除窗体边框及白色边框
查看>>
AcWing 199. 余数之和 (除法分块)打卡
查看>>
hdu-1233 还是畅通工程(最小生成树)
查看>>
Oracle 11g R2 alter table add column
查看>>
互联网高效研发团队管理演进之一
查看>>
iOS10适配——相机,通讯录,麦克风等权限设置
查看>>
测量外业各种注意事项
查看>>
洛谷P1052过河
查看>>
去掉正在打印对话框
查看>>
老技术,UrlRewriter实现全站伪静态
查看>>
hadoop
查看>>