首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在java中使用二进制数

在java中使用二进制数
EN

Stack Overflow用户
提问于 2011-11-02 02:28:16
回答 3查看 99.5K关注 0票数 28

我想知道哪个是在java中处理二进制数的最好方法。我需要一种方法来创建二进制数组并使用它们进行一些计算。例如,我想对二进制数的值或乘法矩阵进行X运算。

问题解决了:非常感谢你提供的所有信息。

我想在我的例子中,我将使用@Jarrod提到的BitSet

EN

回答 3

Stack Overflow用户

发布于 2011-11-02 02:31:04

在Java version7中,您可以通过声明int并在数字前面加上0b0B来简单地使用二进制数

int x=0b101;
int y=0b110;
int z=x+y;

System.out.println(x + "+" + y + "=" + z);
//5+6=11

/*
* If you want to output in binary format, use Integer.toBinaryString()
*/

System.out.println(Integer.toBinaryString(x) + "+" + Integer.toBinaryString(y)
         + "=" + Integer.toBinaryString(z));
//101+110=1011
票数 55
EN

Stack Overflow用户

发布于 2011-11-02 02:51:06

数字本身和它在语言中的表示是有区别的。例如,"0xD“(基数16)、"13”(基数10)、"015“(基数8)和"b1101”(基数2)是指同一数字的四种不同表示。

也就是说,您可以在Java语言中使用"int“原始数据类型来表示任何二进制数(以及任何基数中的任何数字),但只有在Java7中才能使用binary literal,因为您以前可以使用八进制(0)和十六进制(0x)文字来表示这些数字,如果我正确理解了您的问题的话。

票数 3
EN

Stack Overflow用户

发布于 2011-11-02 02:31:43

您可以将它们存储为byte数组,然后单独访问这些位。然后,要对它们进行XOR操作,您只需对字节进行XOR操作(这是一个按位操作)。

当然,它不必是字节数组(可以是int类型的数组或您想要的任何数组),因为所有内容最终都是以二进制存储的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7971074

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档