小伙伴们特别注意了!
小贴士在这儿给他们送去高度关注社会福利:
转贴责任编辑,高度关注+朋友圈小贴士“数据资料”方可申领小贴士精心设计预备的数据资料这份!
4两分钟还无法认知这 5 类「操作符」,就不用说你想当 Java开发人员!
在我看来你连操作符都还搞不清楚不然。。。。。。
所以小贴士根本无法劝你改行了!
操作符最主要有下列四类操作符:
1.微积分操作符
2.亲密关系操作符
3.方法论操作符
4.表达式操作符
5.前提操作符
他们先来说第二个
微积分操作符
有关微积分操作符我列了两个表(如下表所示图)
微积分操作符又包括一元微积分操作符和二算元术操作符。
一元操作符,只有两个操作数。
二元操作符,有两个操作数,操作符在两个操作数之间。
先看看
一元操作符:
“-“取负值;
“++”和“–”用在数值变量之前和之后是不一样的,用在变量前面是先加再执行,用在变量后面是先执行再加。
那你看仔细了,简单来说
就是“+ +”和“- -”用于数值变量之前,在表达式操作中,先对被“+ +”或被“- -”操作变量值先加1或者先减1。
然后在进行其他的操作,这就是先加再执行。
要是“+ +”和“- -”用于数值变量之后,在表达式操作中,先用被“+ +”或被“- -”的操作变量值进行其他的操作,然后在对其值加1或者减1。
这就是先执行再加。
还不明白不然看看实际代码!
实例代码
(左代码,右输出结果下面都是)
注:微积分操作符主要用于数学计算,一般使用数值作为操作数,一元操作符和前后的操作数之间有空格,可能在有些编译器下编译时会出错。
再看看
二元操作符:
加+,减-,乘*,除/,求余%
在微积分操作符中“+”,“-”,“*”,“/”完成加减乘除四则运算。
注:为什么a/b等于2,因为int是整数类型,会自动截断小数点后面的数字。
所以他们如何得到他们正确的答案呢?
他们必须进行数据类型的转换(数据类型的转换前前面有一篇文章已经写了)以及用两个float类型的变量接收,比如(float)a/b或者a/(float)b;(如下表所示的代码)
“%”是求两个操作数相除后的余数。(如下表所示代码)
运算规则:
和数学运算基本相同,在算数运算中按照从算,左向右的顺序计先乘、除、求余再加减,不同的是,程序中操作符不可省略,比如在在数学中可写为”y=5x“而程序中必须写为”y=5*x“。当二元运算的两个操作数的数据类型不同时,运算结果的数据类型它和参与运算的操作数的数据类型中精度最高的一致。
亲密关系操作符可以测试两个操作数之间的亲密关系以及大小(但不会改变操作数的值),亲密关系表达式的结果为方法论类型的boolean(布尔类型)型true/false。
下面他们就来说讲亲密关系操作符!
2
亲密关系操作符:
亲密关系操作符主要有等于==,不等于!=,大于>,大于等于>=,小于<,小于等于<=(如下表所示图)
各个实例:
等于(==)
如果两边的操作数是数值类型即使他们的数值类型不同只要值相等就返回true,不相等就返回false。
例如:
不等于(!=)
如果两边的操作数是数值类型即使他们的数值类型不同,只要他们的值不相等就返回true,相等返回false。
例如:
大于(>)
如果左操作数大于右操作数则返回true,否则返回false。
特别注意只支持数值类型的比较。
例如:
大于等于(>=)
如果左操作数大于或者等于右操作数则返回true,否则返回false。
特别注意只支持数值类型的比较。
例如:
小于(<)
如果做操作数小于右操作数则返回true,否则返回false。
特别注意只支持数值类型的比较。
例如:
小于等于(<=)
如果做操作数小于或者等于右操作数则返回true,否则返回false。
特别注意只支持数值类型的比较。
例如:
注:boolean类型根本无法比较相等和不相等,无法比较大小;>=的意思是大于或等于,两者成立两个方可,结果为true,<=亦如此;判断相等的符号是两个等号,而不是两个等号,这个需要特别小心。实际代码中,数值、变量以及运算结果都可以直接参与比较,只是程序中为了增强可读性,有些时候需要将比较分开进行书写。
比较操作符是程序设计中实现数据比较的基础; 也是很多方法论实现的基础,在程序方法论中,经常通过比较一定的前提,来判断后续的程序该如何执行。
接下来是
方法论操作符
方法论运算是编程中非常重要的一种运算。
方法论操作符他们主要讲这三个,方法论非、短路与、短路或。
(如下表所示图)
有关方法论运算他们要了解下面这5点
1)方法论运算时用来表示复杂的方法论亲密关系
他们前面说了亲密关系运算,方法论运算是在亲密关系运算的基础之上表示更加复杂的方法论亲密关系的。
比如他们现在要判断两个人的成绩是否在(包括60)60-80之间。就是表示这个人的分数是否大于等于60并且小于80同时满足这两个前提才行。
这儿就无法用亲密关系表达式去表达。
亲密关系表达式根本无法表示两个亲密关系是否成立,它无法表达两个亲密关系是否同时成立。
再比如我这儿判断两个字符是否等于大写字母B、或者小写字母b,只要有两个前提成立就可以。这样的亲密关系只用亲密关系操作符同样的是无法表达的,所以他们就要用方法论操作符。
方法论操作符就是把两个boolean类型结果的两个表达式结果为true或者false的表达式连接起来。
2)短路与
短路与是由两个&符号表示的。(如下表所示图)
a、b分别是表达式1,表达式2的返回值;
当a、b的返回值都为false时a、b的结果为false;
当a、b中两个为true两个为false时,ab的结果也为false。
只有当a、b的返回值同时为true是ab的结果才是true。
短路与就是表示两个亲密关系是否同时满足的情况,比如说刚刚计算分数是否大于等于60并且小于80的例子,他们就可以用短路与来写成下面这样。
只有当score同时满则这两个前提的时候boolean c才等于true;
3)点短路或
短路或由两条竖线来表示的。(如下表所示图)
当 a、b 返回值其中只要有两个为 true 时,a、b的结果为 true。
只有当a、b的返回值都为 false 时,a、b的结果才为false。
比如说
他们刚说的例子两个字符是否等于大写字母B、或者小写字母b,就可以用短路或来写成这样。
只要d满足其中两个前提,就为true。当d两个前提都不满足时,结果才为fasle。
4)点方法论非
方法论非用感叹号“!”表示的(如下表所示图)。
这个非方法论非很简单跟短路与、短路或不一样的是方法论非是针对两个操作数进行运算的,比如!a就是求a的非,a以前是false所以!a就是 true 反之以前是true所以!a现在就是false,非的意思就是反过来。
比如他们看代码,
boolean b=!a;
当a是true的时候b就是false,当a是false 的时候b就是true。
下面是一些经典案例:判断某一年是否为闰年。
1.年份能被4整除,但无法被100整除的是闰年。
2.或者年份能被400整除的也是闰年。
System.out.println(“请输入年份”);//用户输入两个年份
Scanner cin = new Scanner(System.in);//接收用户输入的年份
int year = cin.nextInt();//将接收到的字符串转换为整数类型
if (year % 100 != 0 && year % 4 == 0 || year % 400 == 0) {
//如果(year对100取模不等于0并且year对4取模等于0
//或者year对400取模等于0
System.out.println(year + “是闰年”);//就数
} else {
System.out.println(year + “不是闰年”);
}
5)点java的短路方法论原则
对于短路与“&&”,当第二个表达式为false时,将不会测试第二个表达式,所以不管第二个操作数的表达是false还是true,最后的结果一定是false。
对于短路或“||”,当第二个表达式是true时,也不会测试第二个表达式,表达式中只要有两个true,最后的结果就是true。
讲完了方法论操作符他们来说
4表达式操作符:
有关表达式运算他们要了解这两点
一.什么叫表达式运算?
表达式运算就是将等号右边表达式的值计算出来,然后再赋给左边的变量。
比如 int a = 10;就是把10给左边的a。有关这个就不说废话了相信他们都懂。
再给他们说两个表达式表达式本身也有值,什么意思呢?
比如a=10;把10 表达式给了a,a=10这个式子,本来就是有值的,这个值就是等号右边的值也是10。(听着像绕口令)
下面这个例子会更加的直观:
int a,b,c;
a=b=c=10;
首先是先把10表达式给c,然后把c=10表达式给b,最后把b=c=10表达式给a,对就是这样。
二.就是表达式操作符有哪些?
(如下表所示表)
就拿+=举个例子,我相信举两个例子,都能明白了。
比如+=号,a += b,就是a=a+b。
再说的通俗点 当a=2 b=3时a=2+3 a的值等于5。
就是这么的so easy!
最后他们来说
前提操作符:
一般形式:
表达式1 ?表达式2 :表达式3
是根据 表达式1 来判断执行 表达式2 还是 表达式3 ,如果表达式1的结果是true,就会执行表达式2,如果表达式1的结果是false就会执行表达式3.(如下表所示代码)
前提操作符在一些情况下能够代替小型的if…else语句。(如下表所示代码)
怎么样,这5类操作符你看懂了没?
如果没看懂,建议仔仔细细的再看一遍。
如果还不懂,小贴士真的根本无法建议你别做开发人员了!
最后留两个练习题:
1.不用中间变量实现两个变量之间的值互换。
什么意思?就是比如定义int a=5;int b=6;不准定义别的变量,根本无法使用a、b两个变量,最后输出a=6,b=5;
2.从键盘输入两个数字,判断它是奇数还是偶数,用前提操作符来实现,如果是奇数就输出“这个数是奇数”,如果是偶数就输出“这个数是偶数”。