Java语言程序设计基础篇_编程练习题*18.23 (将二进制数转换为十进制数)

*18.23 (将二进制数转换为十进制数)

编写一个递归方法,将一个字符串形式的二进制数转换为一个十进制数。方法头如下:

java 复制代码
public static int bin2Dec(String binarystring)

编写一个测试程序,提示用户输入一个二进制字符串,然后显示等价的十进制数。

代码示例

编程练习题18_23BinaryToDecimalConversion.java

java 复制代码
package chapter_18;

import java.util.Scanner;

public class 编程练习题18_23BinaryToDecimalConversion {
	private static int pow = 0;
	private static int decimal = 0;
	public static void main(String[] args) {
		Scanner input = new Scanner(System.in);
		System.out.print("Enter a binary number: ");
		String bin = input.next();
		System.out.println(bin2Dec(bin));
		input.close();
	}
	public static int bin2Dec(String binarystring) {
		if(binarystring.length()==0)
			return decimal;
		char ch = binarystring.charAt(binarystring.length()-1);
		int value = Integer.valueOf(ch+"");
		decimal += value * (int)Math.pow(2, pow);
		pow++;
		return bin2Dec(binarystring.substring(0,binarystring.length()-1));
		
	}

}
输出结果
java 复制代码
Enter a binary number: 10110
22
相关推荐
程序员吕洞宾9 分钟前
开源多维表格SmartTable V1.6.1:工作流画布,让自动化工作流配置更直观、更方便
java·开源·自动化
我登哥MVP14 分钟前
走进 Gang of Four 设计模式:访问者模式
java·设计模式·访问者模式·原型模式
雪碧聊技术17 分钟前
一文深入理解 Java 函数式编程思想
java·函数式编程
AIGS00121 分钟前
突破语义鸿沟:从向量空间JBoltAI看企业大脑构建逻辑
java·大数据·人工智能·人工智能ai大模型应用
dankokoko25 分钟前
7.13-7.14学习
学习
琢磨先生David26 分钟前
OpenJDK 与 Oracle JDK 完整区别
java
倔强的石头10631 分钟前
企业智能设备运维管理系统:靠飞算 JavaAI,告别 Java 低效搬砖日常
java
逝水无殇37 分钟前
C# 正则表达式详解
开发语言·后端·正则表达式·c#
深盾科技_Virbox42 分钟前
软件授权工具静默安装实践
java·运维·数据库·安全·软件需求
朱永博1 小时前
使用Onnruntime实现Padim/Patchcore推理
开发语言·c#