当前位置: 技术问答>java相关
大整型(BigInteger)的符号位问题?
来源: 互联网 发布时间:2015-05-31
本文导语: 我在做非对称算法,要用到大整型(BigInteger)。 常常要把byte[]转成BigInteger。转化出来的整数必须是正数。 BigInteger的构造函数的不能控制带不带符号位的。 问题就来了,当byte[]的头一位是1时,new出来的BigInteger就是负...
我在做非对称算法,要用到大整型(BigInteger)。
常常要把byte[]转成BigInteger。转化出来的整数必须是正数。
BigInteger的构造函数的不能控制带不带符号位的。
问题就来了,当byte[]的头一位是1时,new出来的BigInteger就是负数。我的算法就算不下去了。
请教如何能把byte[]转换成正的大整型?
常常要把byte[]转成BigInteger。转化出来的整数必须是正数。
BigInteger的构造函数的不能控制带不带符号位的。
问题就来了,当byte[]的头一位是1时,new出来的BigInteger就是负数。我的算法就算不下去了。
请教如何能把byte[]转换成正的大整型?
|
new BigInteger(1,byte[]);
|
可是java里面的本来就是有符号的啊
像byte类型的取值范围就是在-128到127之间
你如果将负的byte转换成正的,岂不是就是转换错误?
比如一个byte数值为-4,你想转为多少?是4还是对应的二进制码所转成的结果?
像byte类型的取值范围就是在-128到127之间
你如果将负的byte转换成正的,岂不是就是转换错误?
比如一个byte数值为-4,你想转为多少?是4还是对应的二进制码所转成的结果?
您可能感兴趣的文章:
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。