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
相关推荐
镜花水月linyi12 小时前
synchronized 锁升级原理:从 JDK 8 实现到 JDK 25 演进
java·后端·java ee
ERP老兵-冷溪虎山12 小时前
Python/JS/Go/Java同步学习(第五十篇半)四语言“path路径详解“对照表: 看完这篇定位文件就通透了(附源码/截图/参数表/避坑指南)
java·javascript·python·golang·中医编程·编程四语言同步学·path路径详解
qq_5710993512 小时前
学习周报二十四
学习
零匠学堂202512 小时前
移动学习平台与在线学习平台是什么?主要有哪些功能?
java·spring boot·学习
少平81812 小时前
一分钱的Bug(求助帖)
java
Data_agent12 小时前
1688获得1688公司档案信息API,python请求示例
开发语言·数据库·python
q***017712 小时前
Spring.factories
java·数据库·spring
-大头.13 小时前
Spring Bean作用域深度解析与实战
java·后端·spring
qq_3363139313 小时前
java基础-排序算法
java·开发语言·排序算法
豆沙沙包?13 小时前
2025年--Lc298-1019. 链表中的下一个更大节点(栈)--java版
java·数据结构·链表