JAVA---关于运算符
2017-07-12 20:20
183 查看
今天,我决定开始我的博客之路,在java方面我是一个新手,我希望我可以通过博客来记录我的成长。
关于运算符,首先说说赋值运算符。看一个小例子:。
程序1:
short b = 2;
b = b +2;
程序2:
short b = 2;
b += 2;
上面的程序在编译时,程序1是不能通过编译的,但是程序2却可以通过编译。对于初学者来说程序1和程序2是没什么区别的,因为我们会认为b += 2和b = b + 2就是一样的。其实这样的想法是错的。在b = b + 2的式子中,对于右边来说,b是short类型,当它与2做加法运算时,b的类型会自动提升到int,然后执行赋值语句,由于赋值语句左边是short类型右边是int类型,大的类型不能自动转换成小的类型,所以编译时会报错。对于b
+= 2来说,它只进行一次赋值运算,并且会自动转换类型,所以程序2不会报错。我们应该注意一下它们的区别。
再来说说逻辑运算符&和&&的区别。
&和&&都可以用作逻辑与的运算符。但是对于&&来说它还有短路的功能,就比如说当表达式1的值是false时,就不会计算表达式2了。对于&来说它还可以用作位运算符,当&操作符两边的表达式不是boolean类型时,&表示按位与操作。
最后说一说字符串连接符号:+。
字符串数据和任何数据使用“ + ”都是相连接的意思,最终都会变成字符串,这个东西看上去没有一点难度,但是我们还是要注意一下,避免掉入一些小陷阱。例如:
int x = 2;
int y = 4;
System.out.println("x+y="+x+y);
上面输出的结果其实是“x+y=24”,不要想当然的以为是“x+y=6”。
-------------------------------------------------------------------分割线----------------------------------------------------------------------------------
这里来个小拓展吧!用三种不同的方法来交换两个数。
1.用第三方变量(这个方法很常用,我就不介绍了)。
2.用两个数的和。
int x = 4;
int y = 7;
x = x + y;
y = x - y;
x = x - y;
3.两个数异或。
int x = 4;
int y = 7;
x = x ^ y;
y = x ^ y;
x = x ^ y;
---------------------------------------------------------------------分割线----------------------------------------------------------------------------------
关于运算符我就写到这里吧!上面主要是记录了我觉得很容易出错的一些地方,本人语文不太好再加上又是新手,所以在表达上有点问题请大家多多见谅!
关于运算符,首先说说赋值运算符。看一个小例子:。
程序1:
short b = 2;
b = b +2;
程序2:
short b = 2;
b += 2;
上面的程序在编译时,程序1是不能通过编译的,但是程序2却可以通过编译。对于初学者来说程序1和程序2是没什么区别的,因为我们会认为b += 2和b = b + 2就是一样的。其实这样的想法是错的。在b = b + 2的式子中,对于右边来说,b是short类型,当它与2做加法运算时,b的类型会自动提升到int,然后执行赋值语句,由于赋值语句左边是short类型右边是int类型,大的类型不能自动转换成小的类型,所以编译时会报错。对于b
+= 2来说,它只进行一次赋值运算,并且会自动转换类型,所以程序2不会报错。我们应该注意一下它们的区别。
再来说说逻辑运算符&和&&的区别。
&和&&都可以用作逻辑与的运算符。但是对于&&来说它还有短路的功能,就比如说当表达式1的值是false时,就不会计算表达式2了。对于&来说它还可以用作位运算符,当&操作符两边的表达式不是boolean类型时,&表示按位与操作。
最后说一说字符串连接符号:+。
字符串数据和任何数据使用“ + ”都是相连接的意思,最终都会变成字符串,这个东西看上去没有一点难度,但是我们还是要注意一下,避免掉入一些小陷阱。例如:
int x = 2;
int y = 4;
System.out.println("x+y="+x+y);
上面输出的结果其实是“x+y=24”,不要想当然的以为是“x+y=6”。
-------------------------------------------------------------------分割线----------------------------------------------------------------------------------
这里来个小拓展吧!用三种不同的方法来交换两个数。
1.用第三方变量(这个方法很常用,我就不介绍了)。
2.用两个数的和。
int x = 4;
int y = 7;
x = x + y;
y = x - y;
x = x - y;
3.两个数异或。
int x = 4;
int y = 7;
x = x ^ y;
y = x ^ y;
x = x ^ y;
---------------------------------------------------------------------分割线----------------------------------------------------------------------------------
关于运算符我就写到这里吧!上面主要是记录了我觉得很容易出错的一些地方,本人语文不太好再加上又是新手,所以在表达上有点问题请大家多多见谅!
相关文章推荐
- java中关于%求余运算符的总结
- 关于Java的移位运算符
- 关于JAVA运算符中的++和--
- 关于Java的移位运算符
- 关于Java中“+”加运算符和“<<”向前移位运算符混合使用时出现的错误
- 关于java中自增、自减运算符与C的不同。
- 使用java语言基础部分知识,做一个简易的2个数之间的关于算术运算符的计算。
- 关于Java的移位运算符
- 关于JAVA中单目运算符自增(++)自减(--)的分析
- java中 关于运算符注意的事项
- L的java学习笔记——关于运算符和循环的一些重点
- 关于自增运算符和java的中间缓存变量机制
- 关于java的常用运算符
- 关于java中的instanceof运算符
- 关于JAVA运算符的优先级
- 关于++运算符在java与c里面的区别
- 关于java运算符
- 关于JAVA的分页查询操作技术(zz)
- 关于Java中的Cookie
- 关于运算符的一个例子