志在指尖
用双手敲打未来

数据类型转换、运算符

第一章数据类型转化
Java程序中要求参与的核算的数据,必需求保证数据类型的一致性,假如数据类型不一致将发生类型的转化。
1.1主动转化
一个int类型变量和一个byte类型变量进行加法运算,成果会是什么数据类型?
inti=1;
byteb=2;
运算成果,变量的类型将是int类型,这便是呈现了数据类型的主动类型转化现象。
主动转化:将取值规模小的类型主动提高为取值规模大的类型。
1publicstaticvoidmain(String[]args){2inti=1;3byteb=2;4//bytex=b+i;//报错5//int类型和byte类型运算,成果是int类型6intj=b+i;7System.out.println(j);8}
转化规则
规模小的类型向规模大的类型提高,byte、short、char运算时直接提高为int。
byte、short、char‐‐>int‐‐>long‐‐>float‐‐>double
1.2强制转化
强制类型转化:将取值规模大的类型强制转化成取值规模小的类型。
比较而言,主动转化是Java主动履行的,而强制转化需求咱们自己手动履行。
转化格局:
数据类型变量名=(数据类型)被转数据值;
当一个short类型与1相加,咱们知道会类型提高,可是还想给成果赋值给short类型变量,就需求强制转化。
1publicstaticvoidmain(String[]args){2//short类型变量,内存中2个字节3shorts=1;4/*5呈现编译失利6s和1做运算的时分,1是int类型,s会被提高为int类型7s+1后的成果是int类型,将成果在赋值会short类型时发生错误8short内存2个字节,int类型4个字节9必须将int强制转成short才干完结赋值10*/11s=s+1;//编译失利12s=(short)(s+1);//编译成功13}
强烈注意
浮点转成整数,直接取消小数点,或许形成数据损失精度。
int强制转成short砍掉2个字节,或许形成数据丢掉。
//定义s为short规模内最大值shorts=32767;//运算后,强制转化,砍掉2个字节后会呈现不确定的成果s=(short)(s+10);
第二章运算符
2.1管用运算符
管用运算符包含:
+加法运算,字符串衔接运算
-减法运算
*乘法运算
/除法运算
%取模运算,两个数字相除取余数
++、–自增自减运算
++运算,变量自己增加1。反之,–运算,变量自己减少1,用法与++一致。
独立运算:变量在独立运算时,前++和后++没有差异。
变量前++:例如++i。变量后++:例如i++。
混合运算:和其他变量放在一起,前++和后++就产生了不同。
变量前++:变量a自己加1,将加1后的成果赋值给b,也便是说a先核算。a和b的成果都是2。
1publicstaticvoidmain(String[]args){2inta=1;3intb=++a;4System.out.println(a);//核算成果是25System.out.println(b);//核算成果是26}
变量后++:变量a先把自己的值1,赋值给变量b,此时变量b的值便是1,变量a自己再加1。a的成果是2,b的成果是1。
1publicstaticvoidmain(String[]args){2inta=1;3intb=a++;4System.out.println(a);//核算成果是25System.out.println(b);//核算成果是16}
符号在字符串中的操作:
符号在遇到字符串的时分,表示衔接、拼接的意义。
“a”+”b”的成果是“ab”,衔接意义
2.2赋值运算符
赋值运算符包含:
=等于号
+=加等于
-=减等于
*=乘等于
/=除等于
%=取模等
赋值运算符,便是将符号右边的值,赋给左面的变量。
1publicstaticvoidmain(String[]args){2inti=5;3i+=5;//核算方法i=i+5变量i先加5,再赋值变量i4System.out.println(i);//输出成果是105}
2.3比较运算符
比较运算符包含:
==比较符号两头数据是否持平,持平成果是true。
<比较符号左面的数据是否小于右边的数据,假如小于成果是true。
>比较符号左面的数据是否大于右边的数据,假如大于成果是true。
<=比较符号左面的数据是否小于或许等于右边的数据,假如小于成果是true。
>=比较符号左面的数据是否大于或许等于右边的数据,假如小于成果是true。
!=不等于符号,假如符号两头的数据不持平,成果是true。
比较运算符,是两个数据之间进行比较的运算,运算成果都是布尔值true或许false。
仿制代码
1publicstaticvoidmain(String[]args){2System.out.println(1==1);//true3System.out.println(1<2);//true4System.out.println(3>4);//false5System.out.println(3<=4);//true6System.out.println(3>=4);//false7System.out.println(3!=4);//true8}
2.4逻辑运算符
逻辑运算符包含:
&&逻辑与
1.两头都是true,成果是true
2.一边是false,成果是false
逻辑与特色:符号左面是false,右边不再运算
||逻辑或
1.两头都是false,成果是false
2.一边是true,成果是true
逻辑或特色:符号左面是true,右边不再运算
!取反
1.!true成果是false
2.!false成果是true
逻辑运算符,是用来衔接两个布尔类型成果的运算符,运算成果都是布尔值true或许false
1publicstaticvoidmain(String[]args){2System.out.println(true&&true);//true3System.out.println(true&&false);//false4System.out.println(false&&true);//false,右边不核算56System.out.println(false||false);//falase7System.out.println(false||true);//true8System.out.println(true||false);//true,右边不核算910System.out.println(!false);//true11}
2.5三元运算符
三元运算符格局:
数据类型变量名=布尔类型表达式?成果1:成果2
三元运算符核算方法:布尔类型表达式成果是true,三元运算符全体成果为成果1,赋值给变量。布尔类型表达式成果是false,三元运算符全体成果为成果2,赋值给变量。
1publicstaticvoidmain(String[]args){2inti=(1==2?100:200);3System.out.println(i);//2004intj=(3<=4?500:600);5System.out.println(j);//5006}

未经允许不得转载:IT技术网站 » 数据类型转换、运算符
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!

 

志在指尖 用双手敲打未来

登录/注册IT技术大全

热门IT技术

C#基础入门   SQL server数据库   系统SEO学习教程   WordPress小技巧   WordPress插件   脚本与源码下载