我在学习java中的时候无意的时候我把自己的身份证号码直接赋值给了一个long类型的变量,但是我用javac编译的时候提示说过大的整数这是怎么一回事?但是我用long.decode()一个字符和我身份证号码相同的数字时却不报错并能对进行一些算法。 我想知道这两个之间的区别在哪里?