初始化长号

Ani*_*ket 1 java long-integer

我正在开发一个硬件接口应用程序,我想long用任意8 byte数字初始化数据类型值(因为它是dll文件中给出的固定键)示例:

long fixedKey=0123456701234567; //error on this line

Error is : The literal 0123456701234567 of type int is out of range 
Run Code Online (Sandbox Code Playgroud)

我见过的原始数据类型(Java API)的范围long是从 -9,223,372,036,854,775,808到9,223,372,036,854,775,807(19位数).显然我输入的数字(16位数字)在long数据类型的范围内,所以为什么我会收到这种错误.

Per*_*ror 12

追加L到最后使它成为一个long literal

long fixedKey=0123456701234567L; //error on this line
Run Code Online (Sandbox Code Playgroud)

  • 但请注意上面关于该数字被解释为八进制的评论! (5认同)
  • @Aniket欢迎你:),别忘了接受答案:) (3认同)