10进制转化成其他进制
2015-08-06 20:19
429 查看
10进制转化成其他进制
public class RadixChange { public static void main(String[] args) { Scanner sc=new Scanner(System.in); int num=sc.nextInt(); //转化成二进制 toBinary(num); //转化成八进制 toOctal(num); //转化成十六进制 toHex(num); sc.close(); } /** * 十进制转十六进制第一种方法 * @param num 一个十进制数 */ public static void toShiLiu(int num) { int[] arr = new int[8]; int index = arr.length; while(num!=0) { arr[--index] = num&15; num = num>>>4; } for(;index<arr.length;index++) { if(arr[index]>9) System.out.print((char)(arr[index]-10+'a')); else System.out.print(arr[index]); } } /**十进制转十六进制第二种方法----查表法 * @param num 一个十进制数 */ public static void shiLiu(int num) { char[] ch={'0','1','2','3','4','5','6','7','8','9','a','b','c','d','e','f'}; char[] arr = new char[8]; int index = arr.length; while(num!=0) { int n = num&15; arr[--index] = ch ; num = num>>>4; } for(;index<arr.length;index++) { System.out.print(arr[index]); } } /**十进制转8进制 * @param num 一个十进制数 */ public static void ba(int num) { char[] ch={'0','1','2','3','4','5','6','7'}; char[] arr = new char[11]; int index = arr.length; while(num!=0) { int n = num&7; arr[--index] = ch ; num = num>>>3; } for(;index<arr.length;index++) { System.out.print(arr[index]); } } /**十进制转2进制 * @param num 一个十进制数 */ public static void er(int num) { char[] ch={'0','1'}; char[] arr = new char[32]; int index = arr.length; while(num!=0) { int n = num&1; arr[--index] = ch ; num = num>>>1; } for(;index<arr.length;index++) { System.out.print(arr[index]); } } /**提取出一个通用的进制转换方法 * @param num 一个十进制数 * @param base * @param off */ public static void toAny(int num,int base,int off) { char[] ch={'0','1','2','3','4','5','6','7','8','9','a','b','c','d','e','f'}; char[] arr = new char[32]; int index = arr.length; while(num!=0) { int n = num&base; arr[--index] = ch ; num = num>>>off; } for(;index<arr.length;index++) { System.out.print(arr[index]); } } public static void toBinary(int num) { toAny(num,1,1); } public static void toOctal(int num) { toAny(num,7,3); } public static void toHex(int num) { toAny(num,15,4); } }
相关文章推荐
- 黑马程序员——java开发环境配置
- 虚拟机的安装和使用
- 驱动中以文件句柄形式调用其他驱动程序(同步调用)
- BizTalk Orchestration execute Flat file disassembler ReceivePipeline
- 贪心+优先队列 HDOJ 5360 Hiking
- hdu 1325 水题
- SQLServer 常用命令
- c++ 计蒜客冗余关系
- 开发文档收集
- Xml文件的相关操作
- 利用哈希值封死飞秋等客户端软件
- 用css样式画尖角
- 三目运算符的简单介绍
- Android ListView&异步加载的学习(三)——AsyncTask加载图片&运用Lru算法优化图片加载
- hdu5363 排列组合+快速幂
- C#生成随机数的三种方法
- HDU 4183--Pahom on Water【最大流dinic】
- 45 个非常有用的 Oracle 查询语句
- C/C++中的二维数组动态内存分配与释放
- 最小生成树 prim算法和kruskal