万金油算法,解决十进制转换成(二进制,八进制,十六进制)。

1.十进制转二进制

public class DecimalToBinary {
	/**
	 * 十进制转化为二进制
	 * @param args
	 */
	public static String decimalToBinary(int n) {
		StringBuilder res=new StringBuilder();
		while(n>0) {
			int ans=n%2;
			n/=2;
			res.append(ans);
		}
		res.reverse();
		System.out.println(res.toString());
		return res.toString();
	}
	public static void main(String[] args) {
		decimalToBinary(2019);
	}

输出:11111100011

2.十进制转八进制

public class DecimalToOctal {
	public static String decimalToOctal(int n) {
		StringBuilder res=new StringBuilder();
		while(n>0) {
			int ans=n%8;
			n/=8;
			res.append(ans);
		}
		res.reverse();
		System.out.println("0"+res.toString());
		return "0"+res.toString();
	}
	public static void main(String[] args) {
		decimalToOctal(360);
		decimalToOctal(2019);
	}

输出:

        0550
        03743

3.十进制转十六进制

public static String decimalToHexadecimal(int n) {
		StringBuilder res=new StringBuilder();
		String s="0123456789ABCDEF";
		while(n>0) {
			char ans=(s.charAt(n%16));
			n/=16;
			res.append(ans);
		}
		res.reverse();
		System.out.println("0x"+res.toString());
		return "0x"+res.toString();
	}
	public static void main(String[] args) {
		decimalToHexadecimal(360);
		decimalToHexadecimal(2019);
	}

输出:

        0x168
        0x7E3

转载于:https://my.oschina.net/u/4035025/blog/3008411

你可能感兴趣的:(万金油算法,解决十进制转换成(二进制,八进制,十六进制)。)