700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > 十进制转化为二进制java代码_【模板小程序】任意长度十进制数转化为二进制(java实现)...

十进制转化为二进制java代码_【模板小程序】任意长度十进制数转化为二进制(java实现)...

时间:2020-05-05 08:20:57

相关推荐

十进制转化为二进制java代码_【模板小程序】任意长度十进制数转化为二进制(java实现)...

妈妈再也不用担心十进制数过大了233

import mon.base.Strings;

import java.math.BigInteger;

import java.util.Scanner;

/**

* 任意长度十进制数转化为二进制

*/

public class AnyNumberConverterFromDecimalToBinary {

/**

*

* @param srcNum 待转换的十进制数

* @return 二进制字符串

*/

private static String convertFromDecimalToBinary(String srcNum){

BigInteger src = new BigInteger(srcNum);

StringBuilder sb = new StringBuilder();

BigInteger zero = new BigInteger("0");

BigInteger two = new BigInteger("2");

while (!zero.equals(src)) {

sb.append(src.remainder(two));

src = src.divide(two);

}

return sb.reverse().toString();

}

/**

* 格式检查

* @param srcNum

* @return 若可以转化为整数, 返回true; 否则返回false

*/

private static boolean FormatCheck(String srcNum){

if (Strings.isNullOrEmpty(srcNum)){

return false;

}

if (!isDigit(srcNum)) {

return false;

}

return true;

}

/**

* 判断一个字符串中每个字符是否都为数字

* @param strNum

* @return 若每个字符都是数字, 返回true; 否则返回 false

*/

private static boolean isDigit(String strNum) {

return strNum.matches("[0-9]{1,}");

}

public static void main(String[] args) {

Scanner sc = new Scanner(System.in);

String srcNum = sc.nextLine();

if (!FormatCheck(srcNum)) {

System.out.println("格式错误");

return ;

}

System.out.println(convertFromDecimalToBinary(srcNum));

}

}

原文:/xiaoxi666/p/9774610.html

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。