运算符分为运算和符。
运算:是一种行为,通过已知量的可能的组合,获得新的量。
符:上古时期,符是沟通人和神的秘密图案,所以符是不可以随便乱画的,故有所谓“画符不知窍,反惹鬼神笑;画符若知窍,惊得鬼神叫”的说法。画符的方法成百上千,有的要掐诀存想神灵随笔而来,有的要步罡踏斗,念动咒语……
咳,知道运算符的来历了吧,所以程序写得好不好,就看运算符用得妙不妙!
======================我是分割线君===================
当然,上面都是我瞎扯的,Java中的运算符到底是什么玩意呢?
其实就跟数学中的计算符差不多的,按照运算优先级请Look下表:
顺序 | 运算符 |
1 | 括号,如 ( ) 和 [ ] |
2 | 一元运算符,如 -、++、- -和 ! |
3 | 算术运算符,如 *、/、%、+ 和 - |
4 | 关系运算符,如 >、>=、<、<=、== 和 != |
5 | 逻辑运算符,如 &&、|| |
6 | 条件运算符和赋值运算符,如 ? :、=、*=、/=、+= 和 -= |
大部分符号相信各位看官都没问题吧?当然有问题的话请留言,哈哈
下面我简单介绍一下完全不会的新手还不认识的几个符号吧,如果有党,请快速路过...
一元运算符:
++:在变量本身值的基本上+1。
public static void main(String[] args){ int i = 5; int j = i++; //++在后面,所以先执行j=i;再执行i++,执行完后i=6,j=5; int k = ++j; //++在前面,所以先执行++j;再执行k=j,执行完后j=6,k=6; System.out.println("j的值为:"+j); System.out.println("k的值为:"+k); }
--:与++的原理相同,只不过变成了-1。
算术运算符:
*:表示相乘。
int i = 12; int j = 5; int k = i*j; //k的值为60
/:表示相除。
int i = 12; int j = 5; int k = i/j; //k的值为2
注意:因为i/j都是整数,所以计算的结果不含小数部分。就算k定义为double类型,结果是2.0。
%:表示求余数。余数知道吧,不用我再多说吧。
int i = 13; int j = 5; int k = i%j; //k的值为3
关系运算符:
!=:表示不等于。千万不要写成“<>”。
==:表示相等。千万不要只用一个“=”。
逻辑运算符:
其实“!”属于逻辑运算符,表示取相反的结果。
关于逻辑运算符,通过一个例子大家就能懂。
记得刚上大学的时候,有个室友就发誓“要找一个又有钱&&又漂亮的妹子当女朋友”,结果两年过去了都没找到满意的,之后他就降低了要求“要找一个有钱||漂亮的妹子当女朋友”,结果又两年过去了还是没有找到满意的,最后他再次降低了要求”找一个女朋友,只要!男的就行“。
哈哈,看懂了吧!!!
赋值运算符:
=:表示把右边表达式的运算结果放到左边的变量中去,所以左边只能是变量,而不能是表达式。
+=:表示在左边变量的基础上加上右边的数据后,把结果再赋值给左边的变量。
int i = 13; i += 3; //i的结果是16
其它(-=,*=等)的功能都是一样。
条件运算符:
?::这是一个三目运算符(对应有三个表达式)。
int i = 13; //把i的值改成5再看str的结果是什么 //i>10则str的值为"yes",否则为"no" String str = i > 10 ? "yes" : "no";
运算符虽然看起来有这么多符号,其实都是我们在编码过程中会经常用到的,而且使用也比较简单,不用特意的死记硬背。
OK,本篇的内容就到这儿吧。
“软件思维”博客地址:51CTO,博客园,感兴趣的小伙伴可以去看相关的其它博文。
本文出自 “软件思维” 博客,请务必保留此出处http://softi.blog.51cto.com/13093971/1959316