二进制到十进制Java转换器
发布时间:2020-12-15 04:42:21 所属栏目:Java 来源:网络整理
导读:我正在创建一个代码,允许您将二进制数转换为十进制数,反之亦然.我已经创建了一个将十进制转换为二进制的代码,但无法研究如何实现二进制到十进制的方面. 我的十进制到二进制的代码如下: import java.util.*;public class decimalToBinaryTest{ public static
我正在创建一个代码,允许您将二进制数转换为十进制数,反之亦然.我已经创建了一个将十进制转换为二进制的代码,但无法研究如何实现二进制到十进制的方面.
我的十进制到二进制的代码如下: import java.util.*; public class decimalToBinaryTest { public static void main (String [] args) { int n; Scanner in = new Scanner(System.in); System.out.println("Enter a positive interger"); n=in.nextInt(); if(n < 0) { System.out.println("Not a positive interger"); } else { System.out.print("Convert to binary is: "); binaryform(n); } } private static Object binaryform(int number) { int remainder; if(number <= 1) { System.out.print(number); return " "; } remainder= number % 2; binaryform(number >> 1); System.out.print(remainder); { return " "; } } } 二进制到十进制代码如何工作的解释也会有所帮助. 我已经尝试了最低有效数字* 1的方法,然后是下一个最低* 1 * 2然后* 1 * 2 * 2,但无法使其工作. 谢谢@korhner我用你的数字系统和数组和if语句. 这是我的工作代码: import java.util.*; public class binaryToDecimalConvertor { public static void main (String [] args) { int [] positionNumsArr= {1,2,4,8,16,32,64,128}; int[] numberSplit = new int [8]; Scanner scanNum = new Scanner(System.in); int count1=0; int decimalValue=0; System.out.println("Please enter a positive binary number.(Only 1s and 0s)"); int number = scanNum.nextInt(); while (number > 0) { numberSplit[count1]=( number % 10); if(numberSplit[count1]!=1 && numberSplit[count1] !=0) { System.out.println("Was not made of only "1" or "0" The program will now restart"); main(null); } count1++; number = number / 10; } for(int count2 = 0;count2<8;count2++) { if(numberSplit[count2]==1) { decimalValue=decimalValue+positionNumsArr[count2]; } } System.out.print(decimalValue); } } 解决方法
样品:
00000100 0 – 1 位1 = 4的求和值 祝好运! (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |