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
相关推荐
坚持就完事了1 分钟前
Java中的集合
java·开发语言
魔芋红茶5 分钟前
Python 项目版本控制
开发语言·python
wjhx10 分钟前
QT中对蓝牙权限的申请,整理一下
java·数据库·qt
YCY^v^14 分钟前
JeecgBoot 项目运行指南
java·学习
云小逸21 分钟前
【nmap源码解析】Nmap OS识别核心模块深度解析:osscan2.cc源码剖析(1)
开发语言·网络·学习·nmap
冰暮流星21 分钟前
javascript之二重循环练习
开发语言·javascript·数据库
风指引着方向22 分钟前
自定义算子开发入门:基于 CANN op-plugin 的扩展实践
开发语言
人间打气筒(Ada)26 分钟前
jenkins基于Pipeline发布项目
java·pipeline·jenkins·流水线·ci·cd·cicd
Fairy要carry27 分钟前
面试-GRPO强化学习
开发语言·人工智能
爬山算法31 分钟前
Hibernate(88)如何在负载测试中使用Hibernate?
java·后端·hibernate