Java中通过代码得到int类型数值的二进制形式
一、完整代码
public class BigInteger {
    int sing;
    byte[] val;
    public BigInteger(int val){
        // 将传递的初始值,按位取值,存入字节数组中
        int val2 = val;
        int i=0;
        while(val/2!=0){
            val = val/2;
            i++;
        }
        i++;
        this.val = new byte[i];
        int j=0;
        while(val2/2!=0){
            this.val[j++] = (byte) (val2%2);
            val2 = val2/2;
        }
        this.val[j]=(byte) (val2%2);
    }
    public static void main(String[] args) {
        System.out.print("请输入要转换为二进制的数:");
        BigInteger bigInteger = new BigInteger(new Scanner(System.in).nextInt());
        for(int i=bigInteger.val.length-1;i>=0;i--){
            System.out.print(bigInteger.val[i]);
        }
    }
}
二、核心思想
- 以 byte[] 存取二进制
 - 通过 wile() 对该数不断除2,得到数组应设大小。
 - 再次通过 while() 对该数的副本不断除2,取余。放入 byte[] 数组
 - 最后输出
 
三、注意事项
- 计算数组应设长度时在最后加1:因为数组长度是从1开始,但代码中 i 是从 0 开始。
 - 数组反向输出?:在取任意进制时,算法是先除得取。最后从最下层至上一层。一层一层获取余数。并作为高位至代位摆放
 
Java中通过代码得到int类型数值的二进制形式的更多相关文章
- Android中将十六进制 颜色代码 转换为int类型数值
		
Android中 将 十六进制 颜色代码 转换为 int 类型数值 方法 : Color.parseColor("#00CCFF") 返回 int 数值 来自为知笔记(Wi ...
 - 【转】java中byte数组与int类型的转换(两种方式)----不错
		
原文网址:http://blog.csdn.net/piaojun_pj/article/details/5903009 java中byte数组与int类型的转换,在网络编程中这个算法是最基本的算法, ...
 - android十六进制颜色代码转换为int类型数值
		
android开发中将十六进制颜色代码转换为int类型数值方法:Color.parseColor("#00CCFF")返回int数值;
 - Java中Object转化为int类型
		
转自:http://blog.sina.com.cn/s/blog_5f8421fb010162kb.html Java中由Object类型转化为int类型时,不能直接转化,先是将Object类型转化 ...
 - Java 中long类型转换成为int类型时可能会出错的地方
		
那计算两个日期之间间隔的天数为例来说明这个问题. 下面是计算日期间隔天数的简单算法(主要出错的地方为红色标注的地方): public int getDay(String startDate, Stri ...
 - java中char类型转换成int类型的两种方法
		
方法一: char ch = '9'; if (Character.isDigit(ch)){ // 判断是否是数字 int num = Integer.parseInt(String.valueOf ...
 - java中byte数组与int类型的转换(两种方式)
		
http://blog.csdn.net/z69183787/article/details/38564219 http://blog.csdn.net/z69183787/article/detai ...
 - Java中的基本类型和包装类型区别
		
首先看一下几个测试题,验证一下java中对基本类型和包装类型的理解,看看最后输出的答案对不对,答案在这篇博客中哦: // 第一题: 基本类型和包装类型 int a = 100; Integer b = ...
 - 算法:用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。
		
算法:用两个栈来实现一个队列,完成队列的Push和Pop操作. 队列中的元素为int类型.<剑指offer> 利用栈来进行操作,代码注释写的比较清楚:首先判断两个栈是否是空的:其次当栈二 ...
 
随机推荐
- OFFICE 2010 每次打开提示安装的问题
			
OFFICE2010 安装后每次打开 文件总是提示配置 解决办法: 前提是office已经激活 注册表找到 HKEY_CURRENT_USER\Software\Microsoft\Office\14 ...
 - 在VMware15.5中安装CentOS7_7_64bit
			
一.创建虚拟机 在我的另一个随笔里有. 地址为:https://www.cnblogs.com/qi-yuan/p/11692092.html 只是在虚拟机安装操作系统时候选择 Linux 而不是 W ...
 - jquery 向页面追加HTML
			
jquery 向页面追加HTML append 函数 例子: <div id="append-test"></div> <script type=&q ...
 - mysql初级了解
			
mysql是一个关系型数据库系统,可以存放若干个数据库,每个数据库中 可以存放若干张表,每张表中可以存放若干条记录 基本代码: 1.查看数据库 show databases: 2.创建数据库 ...
 - Hadoop之HDFS文件系统(二)
			
HDFS客户端 通过IO流操作HDFS HDFS文件上传 @Test public void putFileToHDFS() throws Exception{ // 1 创建配置信息对象 Confi ...
 - 揭秘String类型背后的故事——带你领略汇编语言魅力
			
字符串或串(String)是由数字.字母.下划线组成的一串字符.一般记为 s=“a1a2···an”(n>=0).它是编程语言中表示文本的数据类型.在程序设计中,字符串(string)为符号或数 ...
 - 1 JAVA语言的特点
			
1.可移植性 通过先将java文件编译成字节码,再由特定平台的JVM转义为机器码,使得JAVA语言具有,编写一次,到处执行的特点.可移植性好. 2.面向对象的编程 面向对象编程的良好实现.有良好的面向 ...
 - MySQL(学生表、教师表、课程表、成绩表)多表查询
			
1.表架构 student(sid,sname,sage,ssex) 学生表 course(cid,cname,tid) 课程表 sC(sid,cid,score) 成绩表 teacher(tid,t ...
 - 实战webpack系列03
			
03.Webpack的强大功能 一.生成Source Maps(使调试更容易) 通过简单的配置,webpack就可以在打包时为我们生成的source maps,这为我们提供了一种对应编译文件和源文件的 ...
 - Django-settings可插拔实现
			
Setting可插拔 django暴露了一个可以给用户自定义配置的文件,优先使用用户配置的信息,而且必须要大写才有效 文件目录 --about_settings --default --conf -- ...