BigInteger和String

import java.util.*;
import java.math.*;

public class Main {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Scanner in=new Scanner(System.in);
		while(in.hasNext())
		{
			String str=in.next();
			
			BigInteger big=new BigInteger(str);
			System.out.println(big);
			
			String binary=big.toString(2);
			System.out.println(binary);
			
			StringBuffer sb=new StringBuffer(binary);
			System.out.println(sb);
			
			String reverse=sb.reverse().toString();
			System.out.println(reverse);
			
			BigInteger result=new BigInteger(reverse,2);
			System.out.println(result);
		}
	}
		
}
运行可得
输入173:

173
10101101
10101101
10110101
181

.toString(int radix) 返回radix进制的String类型的该数据(radix为空时只转换为String类型)

String严格意义上说是不可变的,因此要用StringBuffer和StringBuilder来取代String进行变换,StringBuilder比StringBuffer更快,但StringBuffer比StringBuilder更加线程安全

.reverse() 将字符串倒序

你可能感兴趣的:(BigInteger和String)