![](/img/trans.png)
[英]Running into a number format exception when i'm trying to use the BufferedReader to store integer inputs into an array
[英]in java i am trying to use & with a filter to get each byte of an integer it works for the last 3 bytes but the first throws a number format exception
嗨,提前感谢您的帮助,我正在尝试编写一个程序,该程序将允许您重新排序 integer 中的字节我计划用这样的过滤器分隔字节
int number = 3;
int filter = Integer.parseInt("11111111000000000000000000000000",2);
return number & filter;
我在四个不同的过滤器之间给 select 写了一个 switch 语句
第二个到第四个过滤器工作,但第一个抛出一个数字格式异常这与 integer 的符号有关吗?
像这样分离字节后,我想使用左移和右移来移动字节并使用 OR 按位运算符将它们组合回 32 位 integer 但以不同的顺序再次感谢任何帮助。
Integer.parseInt
方法不希望您直接将要设置的字节传递给它,而是将传递的字符串解释为二进制数,以便
11111111000000000000000000000000
二进制是
4278190080
在十进制系统中。 它本身大于 Integer 可以容纳的最大值。
如果你想用二进制模式定义你的 int 变量,那么你可以很容易地做到标准 java 语法:
// using hex syntax
int firstByteFilter = 0xFF000000;
int secondByteFilter = 0x00FF0000;
等等。 无需涉及 parseInt 方法。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.