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
相关推荐
Tony Bai2 分钟前
Go 1.26 中值得关注的几个变化:从 new(expr) 真香落地、极致性能到智能工具链
开发语言·后端·golang
焦糖夹心3 分钟前
python中,怎么同时输出字典的键和值?
开发语言·python
only-lucky5 分钟前
Qt惯性动画效果
开发语言·qt
冬夜戏雪6 分钟前
线性池java demo
java·开发语言
追随者永远是胜利者11 分钟前
(LeetCode-Hot100)5. 最长回文子串
java·算法·leetcode·职场和发展·go
强子感冒了11 分钟前
JavaScript 零基础入门笔记:核心概念与语法详解
开发语言·javascript·笔记
小灵不想卷12 分钟前
LangChain4j 多模态
java·langchain4j
wuqingshun31415914 分钟前
String、StringBuffer、StringBuilder的应用场景
java·开发语言·jvm
桂花很香,旭很美17 分钟前
[7天实战入门Go语言后端] Day 5:中间件与业务分层——日志、鉴权与请求超时
开发语言·中间件·golang
日月云棠22 分钟前
JDK 17 特性详解
java