首页 > 其他 > 详细

进制转换处理方法

时间:2015-01-04 19:47:53      阅读:135      评论:0      收藏:0      [点我收藏+]
class HexadecimalConversion{
	public static void main(String[] args) {
		toBin(6);
		System.out.println("\n");
		System.out.println("------------------------\n");
		toHex(-60);
		System.out.println("\n");
		System.out.println("------------------------\n");
		toOct(60);
	}

	// Dec --> Hex
	public static void toHex(int num){
		trans(num, 15, 4);
	}
	// Dec --> Bin
	public static void toBin(int num){
		trans(num,1,1);
	}

	public static void toOct(int num){
		trans(num,7,3);
	}

	public static void trans(int num, int base, int offset){
		if(num == 0){
			System.out.println(0);
			return;
		}
		char[] chs = {‘0‘,‘1‘,‘2‘,‘3‘,
					  ‘4‘,‘5‘,‘6‘,‘7‘,
					  ‘8‘,‘9‘,‘A‘,‘B‘,
					  ‘C‘,‘D‘,‘E‘,‘F‘};

		char[] arr = new char[32];

		int pos = arr.length;

		while(num != 0){
			int temp = num & base;
			arr[--pos] = chs[temp];
			num = num >>> offset;
		}

		for (int x = pos; x<arr.length; x++) {
			System.out.print(arr[x]);
		}
	}
}


进制转换处理方法

原文:http://my.oschina.net/u/2003106/blog/363590

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!