package com.xxx.transfer;/*** 数字进制相互转换* @see JDK中提供了这些功能* @author le.li**/
public class NumberUtil {public static void main(String[] args) {// 通过X的n次方相加的方式,将二进制转换成十进制System.out.println(binary2Decimal("1001"));// 通过取余数的方式,将十进制转成二进制System.out.println(decimal2Binary(9));// jdk中二进制转十进制方式System.out.println(Integer.parseInt("1001", 2));// jdk中十进制转二进制方式System.out.println(Integer.toBinaryString(9));System.out.println(Integer.toString(9, 2));}/*** 二进制转十进制* @param number* @return*/public static int binary2Decimal(String number) {return scale2Decimal(number, 2);}/*** 其他进制转十进制* @param number* @return*/public static int scale2Decimal(String number, int scale) {checkNumber(number);if (2 > scale || scale > 32) {throw new IllegalArgumentException("scale is not in range");}// 不同其他进制转十进制,修改这里即可int total = 0;String[] ch = number.split("");int chLength = ch.length;for (int i = 0; i < chLength; i++) {total += Integer.valueOf(ch[i]) * Math.pow(scale, chLength - 1 - i);}return total;}/*** 二进制转十进制* @param number* @return*/public static String decimal2Binary(int number) {return decimal2Scale(number, 2);}/*** 十进制转其他进制* @param number* @param scale* @return*/public static String decimal2Scale(int number, int scale) {if (2 > scale || scale > 32) {throw new IllegalArgumentException("scale is not in range");}String result = "";while (0 != number) {result = number % scale + result;number = number / scale;}return result;}public static void checkNumber(String number) {String regexp = "^\\d+$";if (null == number || !number.matches(regexp)) {throw new IllegalArgumentException("input is not a number");}}
}

JAVA:二进制和十进制互转相关推荐

  1. Java bitset转string_Java 二进制和十进制互转,二进制和BitSet互转

    /*** 二进制转十进制 * *@parambinaryNumber *@return */ public static int binaryToDecimal(intbinaryNumber) {i ...

  2. java二进制转十进制代码_二进制转十进制java代码

    二进制转十进制java代码 Java有两种方法可以将二进制数转换为十进制数: 1)使用Integer类的Integer.parseInt()方法. 2)自己编写转换逻辑. 方法1:使用Integer. ...

  3. JAVA:二进制与十进制转换

    将十进制转换为二进制 将二进制转换为十进制 1. 将十进制转换为二进制: 思路:对十进制的数进行除2取余法: /*** 讲10 进制转化为二进制* @param de :待转换的十进制* @retur ...

  4. 二进制转换器java,二进制到十进制Java转换器

    我正在创建一个代码,允许您将二进制数转换为十进制数,反之亦然.我已经创建了一个将十进制转换为二进制的代码,但无法研究如何实现二进制到十进制的方面. 我的十进制到二进制的代码如下: import jav ...

  5. JavaScript十六进制、八进制、二进制与十进制互转

    let a = 17;let b = 10;let c = 5;//十进制转十六进制console.log(a.toString(16)); //'11'//十进制转八进制console.log(b. ...

  6. 关于二进制与十进制互转的方法

    二进制转十进制. 方法一:二进制转为十进制要从右到左用二进制的每个数去乘以2的相应次方(次方从0开始),再将其每个数进行相加. 例如:(1101)2转十进制: 方法二:先把2的次方依次排列出来,再将二 ...

  7. java 二进制转十进制的算法_java中十进制数转换二进制数

    将十进制转换成二进制的算法如下: 1.给定一个数: 2.根据十进制转换二进制的思想:把这个数除以2若为单数则为1,为偶数则为0,直到最后一个数为1为止.所以我们要做的就是用你给定的这个数除以2,如果结 ...

  8. Java 二进制,八进制,十进制,十六进制

    学而时习之,温故而知新 二进制特征: 1 : 有2个数字组合,"0" 和"1" 2 : 运算时逢2进1 例如 101010 八进制的特点: 1: 有 8个数组组 ...

  9. 二进制数与二进制、十进制互化

    在数学和数字电路中,**二进制(binary)**数是指用二进制计数系统,即以2为基数的计数系统表示的数字.这一系统中,通常用两个不同的符号0(代表零)和1(代表一)来表示.以2为基数代表系统是二进位 ...

最新文章

  1. shell编程中crontab用法超级详解!
  2. 下一代微服务!ServiceMesh的2018年度总结 | 万字雄文
  3. 石头剪刀布php源码,php实现的网页版剪刀石头布游戏示例
  4. linux中su命令源码,Linux-命令-su
  5. 【codevs1285】【BZOJ1208】宠物收养所,splay练习
  6. 60-100-020-使用-MySQL 的Show Profile命令
  7. 如何在同一地方组建多个 ZigBee 网络
  8. c语言编译程序的软件下载,c语言编译器(wintc)
  9. C语言基础知识(期末喽)
  10. 香农编码实验报告matlab,实验三 香农编码
  11. 如何直观理解粒子滤波并进行Python编程实践
  12. mysql复制表语句
  13. 算法系列之算法学习书籍以及资料推荐
  14. php dth网络节点,基于 DHT 网络的磁力链接和BT种子的搜索引擎架构
  15. ACCESS备件库管理数据库
  16. 设计师都在用的素材网站,真的纯免费,还能商用
  17. jq点击图片展示预览效果
  18. 致创业者:你死的太快,是因为做的太慢
  19. 利用多种语言打印出:第一行一个*,第二行两个*,依次类推
  20. 绿叶制药血脂康片高含量规格即将在华开展临床试验

热门文章

  1. php无需鉴权的接口,thinkphp5-restfulapi 博客 接口鉴权应用
  2. easyui table 如何只展示一条_如何使用MySQL,这些操作你得明白!
  3. Leetcode每日一题:559.maximum-depth-of-n-ary-tree(N叉树的最大深度)
  4. 西瓜书+实战+吴恩达机器学习(十五)无监督学习之关联分析(Apriori, FP-growth)
  5. react学习笔记(9)表单控件
  6. 用python实现的的手写数字识别器
  7. 8个Python高效数据分析的技巧
  8. Java自动化测试框架-12 - TestNG之xml文件详解篇 (详细教程)
  9. 《手把手教你》系列基础篇之4-python+ selenium自动化测试-xpath使用(详细教程)
  10. 命令行参数的作用_Rasa 聊天机器人专栏(二):命令行界面