有没有办法在Java中声明unsigned int?
或者问题也可以这样构成:Java等同于unsigned?
只是告诉你我正在研究Java的实现的上下文String.hashcode().如果整数是32 unsigned int,我想测试碰撞的可能性.
Java中有没有办法使用像(My)SQL这样的无符号数字?
例如:我想使用一个8位变量(byte),其范围如下:0... 256; 而不是-128... 127.
C语言有签名和无符号类型,如char和int.我不确定,它是如何在汇编级别实现的,例如在我看来,有符号和无符号的乘法会带来不同的结果,因此汇编执行无符号和有符号算术或仅执行一次,这在某种程度上是模拟的不同的情况?
我正在使用Java SE开发工具包8更新25(64位).我已经阅读了The Java™Tutorials中的"原始数据类型"Java教程,根据此规范,long类型可以保持最大值(2到64的功率)-1,即18446744073709551615.
但是下面的代码会抛出"整数太大"错误消息.
public class SampleClass
{
public static void main (String[] args)
{
Long longMaxValue= 18446744073709551615L /* UInt64.MaxValue */;
}
}
Run Code Online (Sandbox Code Playgroud)
此外,Long.Max_Value仅返回9223372036854775807.为什么?我需要将值18,446,744,073,709,551,615存储为java中的常量.我该怎么办?
任何帮助都会得到满足.