84669 personnes étudient
152542 personnes étudient
20005 personnes étudient
5487 personnes étudient
7821 personnes étudient
359900 personnes étudient
3350 personnes étudient
180660 personnes étudient
48569 personnes étudient
18603 personnes étudient
40936 personnes étudient
1549 personnes étudient
1183 personnes étudient
32909 personnes étudient
比如byte b = 1; char c = 1;,如果整数类型默认是int类型的话,那么byte b = 1;应该需要强转换才对,因为int是高精度的,但这里明显不报错,这是为什们呢?
byte b = 1; char c = 1;
拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...
首先,整数类型默认是int。这个毫无疑问。其次,在允许的类型范围内,在此处byte:-128~127而整数int 1 在这个范围,编译器会对常量自动进行向下的转化。如果超出这个范围的常量,编译器直接报错。
byte,short,char,boolean在底层都是当做int来处理的
不对的,两个整形相加,如果小于等于int,则默认是int,如果其中一个为long,则默认按照long;
你试试申明两个byte变量,然后相加赋值给另一个byte变量,编译器会提示出错的,需要强制类型转换的
看看这篇:http://www.programgo.com/arti...
分自动转换和强制转换的
首先,整数类型默认是int。这个毫无疑问。
其次,在允许的类型范围内,在此处byte:-128~127
而整数int 1 在这个范围,编译器会对常量自动进行向下的转化。
如果超出这个范围的常量,编译器直接报错。
byte,short,char,boolean在底层都是当做int来处理的
不对的,两个整形相加,如果小于等于int,则默认是int,如果其中一个为long,则默认按照long;
你试试申明两个byte变量,然后相加赋值给另一个byte变量,编译器会提示出错的,需要强制类型转换的
看看这篇:http://www.programgo.com/arti...
分自动转换和强制转换的