做一个官方网站需要多少钱,杭州公司网站建设电话,怎样注册商标,龙岗在线网站制作数据类型转换存在的意义数据类型转换#xff0c;在实际的应用开发中#xff0c;常常会对不同类型的数字类型进行计算#xff0c;所以就用到了数据转换。一方面#xff0c;使用算术计算符对数字进行运算时#xff0c;系统在适当的时候回进行自动转换#xff1b;另一放方面…数据类型转换存在的意义数据类型转换在实际的应用开发中常常会对不同类型的数字类型进行计算所以就用到了数据转换。一方面使用算术计算符对数字进行运算时系统在适当的时候回进行自动转换另一放方面程序开发人员还可以强制进行数据转换这个操作有时候灰出现精度丢失等问题数据转换的依据取决数据的取值范围byte - short - int -long -float -doublechar-注意1.boolean 类型不能够参与类型转换2.char 和byte/short 只有交集关系没有子集关系1.自动类型转换将小类型的数据转换为大类型的数据系统会自动转换// 由于右边int类型的数值正好在byte范围之内,所以系统帮我们做了转换byte by2 127;System.out.println(by2);2.强制类型转换将大类型的数据转换为小类型的数据会编译报错解决办法强制类型转换格式目标类型 变量名 (目标类型) 被转换的类型强制类型转换会出现的问题1.精度的丢失2.数据的溢出3.byte/short特例// 由于右边int类型的数值正好在byte范围之内,所以系统帮我们做了转换byte by2 127;System.out.println(by2);short s 32767;System.out.println(s);4.byte/short和char 参与转换都需要强制类型转换//byte /short/char类型转换比如强制转换因为他们在取值范围只存在交集关系不存在父子集关系。byte by3 65;char ch3 (char)by3;System.out.println(ch3);char ch4 0;byte by4 (byte)ch4;System.out.println(by4);5.表达式类型提升当表达式的运算符两边类型不一致的时候结果的类型会自动向高类型转换// 当表达式的运算符两边类型不一致的时候,结果的类型会自动向高类型转换i5 (int)(i5 f3);System.out.println(i5);6.当byte short char 之间参与运算的时候底层都会转换为int 类型来计算// 6.当byte short char 之间参与运算的时候,底层都会转换成int类型来计算byte by6 97;short s2 1;char ch6 a;short s3 (short)(by6 s2 ch6);System.out.println(s3);7.boolean类型不能够参与运算和转换// 7.boolean类型不能够参与运算和转换,但是在JavaScript中可以boolean bool true;// int i6 bool 1;// int i6 (int)bool;8.字符串在参与运算中的转换问题字符串相加是拼接操作System.out.println(2 2 22 2 2); // 输出结果为42222。 当字符串与其他类型拼接以后就成为一个新的字符串9.变量计算和常量计算问题变量相加系统无法判断具体的结果//两个不同类型的变量相加通不过编译器byte bbb2 10;short sss2 20;short ttt bbb2 sss2;System.out.println(ttt);//报错误代码//需要强制标明类型常量相加在编译时期系统就会运算结果//编译器对常量进行了计算然后int类型的30没有超byte的范围实行了byte特列byte b3 10 20;System.out.println(b3);//正确代码本作品采用《CC 协议》转载必须注明作者和本文链接