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
相关推荐
Pyeako11 分钟前
PyQt5 + PaddleOCR实战:打造桌面级实时文字识别工具
开发语言·人工智能·python·qt·paddleocr·pyqt5
darkhorsefly18 分钟前
玩24算的益处
学习·游戏·24算
迈巴赫车主18 分钟前
蓝桥杯19724食堂
java·数据结构·算法·职场和发展·蓝桥杯
i220818 Faiz Ul1 小时前
动漫商城|基于springboot + vue动漫商城系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·论文·毕设·动漫商城系统
白藏y1 小时前
【C++】muduo接口补充
开发语言·c++·muduo
海兰1 小时前
【实战】MCP 服务在 Nacos 中注册状态分析与优化
android·java·github·银行系统·银行ai
zk_one2 小时前
【无标题】
开发语言·前端·javascript
深蓝海拓2 小时前
S7-1500学习笔记:用户自定义数据类型(UDT)
笔记·学习·plc
阿里嘎多学长2 小时前
2026-04-05 GitHub 热点项目精选
开发语言·程序员·github·代码托管
OOJO2 小时前
c++---vector介绍
c语言·开发语言·数据结构·c++·算法·vim·visual studio