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
相关推荐
愚公移山填海几秒前
【无标题】
笔记·python·学习·pycharm
无巧不成书02182 分钟前
Tomcat 下载后使用全指南:解压、环境配置、启动验证与常见问题排查
java·tomcat
bnmoel2 分钟前
C++ 基础入门篇(二):引用
开发语言·c++·引用·底层
Wang's Blog6 分钟前
Java框架快速入门: Spring Security+OAuth2之多因子认证缓存服务
java·spring·缓存
wuminyu20 分钟前
Kafka配置TLS/SSL加密传输时零拷贝失效分析
java·linux·c语言·jvm·c++
边境悍匪24 分钟前
蜗牛学苑 Java 智能体学习 Day41|ElementPlus 布局、Vue‑Router 登录、Axios 思维导图复盘
java·vue.js·学习
影视飓风TIM25 分钟前
C++ 智能指针:auto_ptr / unique_ptr / shared_ptr / weak_ptr 原理与使用
开发语言·c++
一木 之林30 分钟前
李沐《动手学深度学习》知识卡合集:从 Softmax 回归到房价实战(第24-50集)
开发语言·c++·人工智能
心中有你021430 分钟前
Java Swing实现校园最短路径导航系统(Dijkstra算法完整源码+详细解析)
java·开发语言·算法
Alphapeople33 分钟前
路径规划算法的python实现
开发语言·python·算法