搞了几天杂事,没有更真实罪恶感满满
本节的内容和上一节的内容,实际上是每门高级编程语言几乎都有的基础知识,也是最为基础的一部分,但是不是说基础就不重要,还是很重要的。
1. 比较运算符
> == < >= <= != instanceof
这些是java会用到的比较运算符,下面一个个来解释吧~
‘>’ and ‘<’ 我就不说了,大家都知道了
‘==’呢有编程基础的同学也应该知道了,就是相等的意思
/*
用代码来解释一下
*/
a=b; //这句代码是赋值语句,表达的意思是把b的值给了a
a==b //这句代码可以理解为语文里面的疑问句,a和b的值相等吗?
//所以答案也是显而易见的,相等(true)或者不相等(false)
‘>=’和‘<=’一起介绍,前面的是大于等于,后面的是小于等于
a>=b //同样的,你问计算机,a大于等于b吗?
a<=b //a小于等于b吗?
‘!=’ 这个符号的意思是不等于,不好理解是不是?
a!=b //你问计算机,a不等于b吗?如果a不等于b,计算机当然回答你true
//反之,如果a等于b,计算机回答你false
对的,这个‘!=’就是和‘==’相反的。
还有一个instance of 这个比较高级,我们学到后面才会用到,前期还用不到,举个例子
a instance of b //你问计算机,a是属于b类的吗?
【问】类是什么意思?
【答】这个问题呢,要用日常生活来类比,其实日常生活中的所有东西都是有自己的归属的,在java这个语言中每一个东西,和日常生活中的东西也是相同。
打个比方,小明和小方是两个小学生,那么他们属于什么类别呢?类别多了,学生、男性、人。所以这个比方转换到,代码语言就是,你可以问计算机:
小明 instance of 人 //你就是问,小明属于人这个类吗?答案当然是true
好了,比较运算符就介绍完了,是不是找到了什么规律呢?
反正我是找到了,就是用这个运算符,都能把代码转换为一句语文里面的疑问句,问计算机,计算机呢回答你true或者false。
2. 逻辑运算符
这逻辑运算符就是让人看的云里雾里了,什么逻辑啊什么的,好虚。
那就先来看看,运算符,运算符,有啥符号吧
& | ! ^ && ||
完了完了,这就是一堆乱码嘛,什么玩意儿!?
来来来,听我说,这个东西确实还是有一定的难度的,这个逻辑运算符是来处理日常生活中的逻辑关系的(不是和没说一样吗?)
【例子】
小明在11中,1年级11班上学,他们班有51个人(别问我为什么喜欢1)。
今天班主任来班上宣布一个消息,“如果咱们这次期末考试都考上70分,我请大家吃冰淇淋!”
OK, 那么小明就在想,怎么样才能吃到这个冰淇淋呢?
小明自己要考上70分,小1,小2……,小50 都要考上70分(不要问我小51怎么没了),所以其实就是小明考上70并且小1考上70,并且….(反正并且到小50),才能吃到冰淇淋。用java语言就这么来表示
(小明分数>70)&(小1分数>70)&...&(小50分数>70)
//'&'这个符号就是表示并且的意思,以后不会的时候,翻译成小明吃冰淇淋的故事
但是老师还没说完,“你们要是有一个人低于60分”,就一个人请我吃一次冰淇淋(腹黑老师,吃那么多不怕窜稀吗。。。。)
小明又想,这次是小明低于60或者小1低于60…或者小50低于60,就每个人都要请老师了。用java表达
(小明分是<60)|(小1<60)|...|(小50<60)
//'|'就是或者的意思
这个就是逻辑关系了,生活中我们用与、或、非来表示
‘!’就是非的意思了
‘^’这个符号太恶心了,名字叫异或。大家发现没有,这个逻辑运算符就是把一堆true和false连起来,得到一个结果true或者false。
异或的运算方式,’^’符号的两边不一样,得到的结果就是true,一样得到的结果就是false
(人是动物)^(人不是动物) //true^false=true
(人是动物)^(人是动物) //true^true=false
(人不是动物)^(人不是动物) //false^false=false
【问】那’&&’和‘||’又是啥?
【答】是’&’和‘|’的升级版,又要听故事了。
小明的那个老师又来了, 期末考试结束了,她不想自己算这个冰淇淋事件的结果,她交给计算机了。一开始她变成的时候,用得代码如下
(小明分数>70)&(小1分数>70)&...&(小50分数>70)
如果得到的结果是true她就请同学们吃,可是这个计算机笨的嘞,明明小31已经没得到70分了, 计算机还要等到比完小50才给出答案,如果老师编程时变成这么写了
(小明分数>70)&&(小1分数>70)&&...&&(小50分数>70)
那么计算机就聪明了,比到小31是false就不再比后面的,反正结果是false,不用请冰淇淋了。
再来,老师还要算一算是不是可以吃学生的冰淇淋呢,如果老师这么编程
(小明分是<60)|(小1<60)|...|(小50<60)
这样计算机又要啥啥的从小明比到小50了,如果老师这么编程
(小明分是<60)||(小1<60)||...||(小50<60)
小31分数才50分,肯定全班要请吃冰淇淋了,计算机就高兴了,不用比剩下的了,true。
所以我们在编程的时候,不要让计算机变笨,一般的情况下,多用&&和||
======割割======
又罪恶了,故事一讲完就累了,鸽!明天再写