十进制转化其他进制功能函数

public class  Trans
{
 public static void main(String[] args) 
 {
  toBin(6);
  System.out.println();
  toOctal(60);
  System.out.println();
  toHex(60);
 }
//十进制转二进制
  public static void toBin(int num)
 {
   trans(num,1,1);
 }
//十进制转八进制
  public static void toOctal(int num)
 {
   trans(num,7,3);
 }
//十进制转十六进制
        public static void toHex(int num)
 {
    trans(num,15,4);
 }
    //定义一个转化进制的转化功能函数
 public static void trans(int num,int base,int offset)
 {
if (num==0)

  {

   System.out.print("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];    //创建一个char
  int pos = arr.length; //pos代表指针,就是存取的位置
  while (num!=0)
  {
   int temp = num & base;
   arr[--pos] = chs[temp];
   num = num >>> offset;
  }
  for (int i=pos;i<arr.length;i++)
  {
   System.out.print(arr[i]);
  }
 }
}

 

分享到:
关键词:Java

<< 上一篇

转进制

下一篇 >>

建立一个ArrayTool工具

网友留言(0 条)

发表评论

验证码