标签:类型转换 short int -- 注意事项 类型 强制 byte
数据类型转换-强制转换
强制类型转换
特点:代码需要进行特殊的格式处理,不能自动完成
格式:范围小的类型,范围小的变量名 = (范围小的类型)原本范围大的数据;
//左边是int类型,右边是long类型,不一样 //long-->int,不是从小到大 //不能发生自动类型转换 //范围小的类型,范围小的变量名 = (范围小的类型)原本范围大的数据;
int num = (100) 100L;
System.out.println(num);
注意事项
1.强制类型转换一般不推荐使用,因为有可能会发生精度损失,数据溢出
2.byte/short/char这三种类型都可以发生数学运算,例如加法“+”
3.byte/short/char这三中类型在运算的时候,都会被首先提升为成为int类型,然后再计算
4.boolean类型不能发生数据类型转换
//long强制转换成为int类型 int num = (int) 600000000L; System.out.println(num);1705032704 //double-->int,强制类型转换 int num2 = (int) 3.99; System.out.println(num2); //这并不是四舍五入,而是舍弃小位数
char zifu1 = 'A'; //这是一个字符型变量,里面是大写字母A System.out . println(zifu1 + 1); // 66,也就是大写字母A被当做65进行处理 . //计算机的底层会用一个数字(二进制)来代表字符A,就是65 //一旦char类型进行了数学运算,那么字符就会按照一定的规则翻译成为一个数字 byte num4 = 40; //注意!右侧的数值大小不能超过左侧的类型范围 byte num5 = 50; // byte + byte --> int + int --> int int result1 = num4 + num5; System . out . println(result1); // 90 Cshort num6 = 60; .//byte+short-->int+int-->int // int强制转换为short:注意必须保证逻辑上真实大小本来就没有超过short范围,否则会发生数据溢出 short result2 = (short) (num4 + num6); System. out. println(result2); // 100
标签:类型转换,short,int,--,注意事项,类型,强制,byte 来源: https://www.cnblogs.com/yuzong/p/16419967.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。