超大正整数二进制转化

                               //待转化的超大二进制正整数
		String s = "" + Long.MAX_VALUE;
		BigInteger TWO = new BigInteger("2");
		BigInteger ZERO = new BigInteger("0");
		BigInteger b1 = new BigInteger(s);

		String temp;
		StringBuffer sb = new StringBuffer();	
		do {
			temp = b1.remainder(TWO).toString();
			sb.append(temp);
		} while((b1 = b1.divide(TWO)).compareTo(ZERO) != 0);
	
		System.out.println(s + "的二进制为:\n" + sb.reverse());

 

 

9223372036854775807的二进制为:
111111111111111111111111111111111111111111111111111111111111111

 

你可能感兴趣的:(二进制)