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
相关推荐
lisin-lee-cooper3 分钟前
【leetcode658】有序数组找出k个最接近x的数
java·数据结构·算法
sunburn-11 分钟前
Java堆(Heap)详解与实战教学
java·开发语言·数据结构·ide·算法
Kyrie_kk11 分钟前
Java--TimeUnit时间单位枚举类(时间单位规范)
java·后端
jayson.h26 分钟前
PDF 合并+添加页码 相关库、类、函数
开发语言·前端·python
念何架构之路31 分钟前
beego总体架构与工程结构
java·架构·beego
qq_3227627535 分钟前
一个接口从能用到稳定,中间差的到底是什么
服务器·开发语言·lua·接口·fastapi·请求
典典分享指南39 分钟前
用飞书多维表格搭建内容管理看板
java·python·r语言·composer·symfony
Data_Journal44 分钟前
Scrapyd:分步教程
开发语言·python·microsoft·golang·编辑器·html·iphone
网安蟹佬霸1 小时前
2026网络安全每日学习计划:每天学多久?学什么?怎么安排?照着做就行!
网络·学习·安全·web安全·学习路线·网安
一条破秋裤1 小时前
TIM 输入捕获与 PWMI:从边沿到频率、占空比
笔记·stm32·学习