黑马程序员技术交流社区

标题: 关于2进制 [打印本页]

作者: 拂袖叙五代    时间: 2015-10-6 10:07
标题: 关于2进制
int i=-1;
print(Integer.toBinaryString(i));
这句话输出什么?还有Integer.toBinaryString(i)这个是什么意思,负数也可以取2进制吗

作者: 月影千华    时间: 2015-10-6 13:02
任何数在计算机中都是以二进制表示的呀...
作者: 杨建群    时间: 2015-10-6 14:40
Integer.toBinaryString(i)是JAVA中的转换2进制的方法,负数是有二进制的啊,只不过符号位是1,正数符号位是0
作者: 吉吉粥    时间: 2015-10-6 20:01
package answer;//-1 转换成 二进制
class ArrayTest6
{
        public static void main(String[] atgs)
        {
                toBin(-1);
        }
public static void toBin (int num){
        //定义一个二进制表
        char [] chs = {'0','1'};//符号都是英文状态下的
        //定义一个临时容器
        char[] arr= new char[32];//char长度要写
        //定义一个操作数组的指针
        int pos=arr.length;
        while(num!=0)
                        {
                                int temp=num&1;//模1
                                arr[--pos]=chs[temp];//查表
                                num=num>>>1;//左移一位
                        }
                for (int x=pos; x<arr.length;x++)//for 循环 x=pos 指针有效位开始
                {
                        System.out.print(arr[x]);//输出
                }
        }
}
作者: adamdell12580    时间: 2015-10-6 21:33
计算机就是01组成的,当然任何数字都可以用二进制来表示了
作者: cuijinghao    时间: 2015-10-6 22:03
可以取,把代码敲进eclipse运行一下
作者: 江湖104    时间: 2015-10-6 22:07
不必太纠结,会用就行了




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2