关于Long类型声明的问题 第四个是个INT,不是LONG,如果声明LONG TYPE,必须在后面加L/l 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 我的意思是,同样声明的都是LONG类型,为什么2147483647及一下可以不用加L,而大于2147483647的数值后面要加L 2楼正解int 最大2^31-1=2147483647long l1 = 2147483647;是把int型转型成long型给l1而2147483648无法容纳在int型里,只能用long型的描述方式,所以只能用2147483648l或2147483648L来描述,所以long l4 = 2147483648;出错 不错。而双精度默认是double型 对于整数,如果不加申明,系统会默认为int.而最后一个超出了范围,所以要加L指明是长整形 整数默认为INT型,而要转为LONG型则要向下转型,否则会出错 2147483647在int范围内,声明的时候自动类型转换成long了而2147483648就不在int范围了。声明的时候必须制定long类型。 “2147483647”本身默认为是个int类型的。同时这个数又是int类型的最大值.long l1 = 2147483647; //它之所以对,是因为它把2147483647默认为int类型,转换类型之后赋值给long类型的L1long l2 = 2147483647L; //它之所以对,是因为它把2147483647L当成一个long类型的数,赋值给long类型的L2long l3 = 2147483648L; //它之所以对,是因为 2147483648 本身就处在long类型的范围内,当成一个long类型的数,赋值给long类型的L3long l4 = 2147483648; //错 它之所以错,是因为2147483648 这个数默认是INT类型的,但是它超出了INT类型的范围,与L4无关。 这里确实 是把 2147483647 按 int 编译了。但是这里把一个大类型变成了小类型,有点疑惑。 Object类中的finalize()方法什么时候执行? 关于批处理的问题 三个数比较大小!新手问题! 请问各位用java怎么来对usb接口进行数据的读写操作? 给介绍本学习数据结构的好书 求助!关于时间转换的问题 Java中的HashTable十个什么东西? 谁告诉我怎么让开机的时候MSN不自动运行????????????????? ~~~问个菜问题啊:JRE和Java 2 SDK有什么区别~~~ 想学java,想问一下用那个开发环境比较好,随便推荐学java本好书 twaver 写了个俄罗斯方块,请多指教
int 最大2^31-1=2147483647
long l1 = 2147483647;是把int型转型成long型给l1
而2147483648无法容纳在int型里,只能用long型的描述方式,所以只能用2147483648l或2147483648L来描述,所以long l4 = 2147483648;出错
不错。
而双精度默认是double型
2147483647在int范围内,声明的时候自动类型转换成long了
而2147483648就不在int范围了。声明的时候必须制定long类型。