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
相关推荐
rit84324993 分钟前
LTE系统资源分配MATLAB实现示例(基于OFDMA的动态调度)
开发语言·matlab
会飞的小蛮猪3 分钟前
Rockylinux急速安装K8s学习环境
学习·容器·kubernetes
代码游侠5 分钟前
数据结构--队列
数据结构·笔记·学习·算法·链表
Tony6666888886 分钟前
Webservic 服务注册发布及参数封装-实际项目应用
java·spring·servlet
老华带你飞10 分钟前
零食商城|基于springboot + vue零食商城管理系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·后端·毕设
chilavert31812 分钟前
技术演进中的开发沉思-231 Ajax:页面内容修改
开发语言·前端·javascript
李日灐13 分钟前
C++STL:熟悉vector的底层实现,部分源码解析,迭代器失效和深层次浅拷贝
开发语言·c++
车载测试工程师17 分钟前
CAPL学习-ETH功能函数-方法类2
网络·网络协议·学习·c#·以太网·capl·canoe
xian_wwq17 分钟前
【学习笔记】数据要素市场新基石:可信数据空间技术架构详解
笔记·学习
wuk99817 分钟前
基于MATLAB的混合动力汽车(HEV)简单整车模型实现
开发语言·matlab·汽车