java自定義十进制转换成二进制函數

/**
 * 十进制转换成二进制
 */
package review;

/**
 * 导入相应的包类
 */
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;

/**
 * @author 杨忠盛
 * @version 1.0 , 2007-3-20
 */
public class ToBinaryString {
 
 /**用于连接所有计算出来的二进制字符,以字符串形式存储*/
 String BinaString;
 
 /**
  * 构造方法
  */
 protected ToBinaryString(){
  
 }
 
 /**
  * 此方法用于计算二进制
  * @param num 为要转换成二进制的数
  */
 public String toBinaString(int num){
  
  /**定义一个ArrayList对象用于存储每一位计算出来的二进制数*/
  ArrayList<Integer> numArray = new ArrayList<Integer>();
  
  /**
   * 计算每一位二进制数
   */
  while(true){
   
   numArray.add( num % 2 );
   
   if(num==0) break;
   
   num = num / 2;
  
  }
  
  /**倒序排列计算出的二进制数,并将其转换成字符形式连接在一起*/
  for(int i=numArray.size()-1;i>=0;i--){
   
   BinaString += String.valueOf(numArray.get(i));
  }
  
  return BinaString.substring(5);//以二进制字符串形式返回计算的结果
 }
 
 /**
  * 此方法用于显示信息
  */
 public void display(){
  
  /**定义一个十进制数*/
  int num10;
  
  System.out.print("请输入要转换的十进制数:");
  
  /**从键盘输入*/
  BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
  
  try {
   
   String str = br.readLine();//读取一个文本行
   
   num10 = Integer.parseInt(str);//转换成 int 型并赋值给 num10
    
   System.out.println("十进制为:" + num10);
    
   /**调用 toBinaString 方法转换成二进制*/
   String num2 =toBinaString(num10);
    
   System.out.print("转换成二进制为:" + num2);

  } catch (IOException e) {
   
   /**抛出异常*/
   System.out.println(e);
  }
  
  
 }
 
 /**
  * 程序的唯一入口点 main 方法
  * @param args 传递至 main 的参数
  */
 public static void main(String[] args) {
  
  ToBinaryString newNum = new ToBinaryString();

  newNum.display();
  
 }
}
 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值