Java基础03——比较运算符和逻辑运算符

搞了几天杂事,没有更真实罪恶感满满


本节的内容和上一节的内容,实际上是每门高级编程语言几乎都有的基础知识,也是最为基础的一部分,但是不是说基础就不重要,还是很重要的。

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。

所以我们在编程的时候,不要让计算机变笨,一般的情况下,多用&&和||

======割割======

又罪恶了,故事一讲完就累了,鸽!明天再写

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值