00:00
那么今日呢,咱们就说完了这一章呢,咱们叫变量与运算符,实际上呢,说的是这一章呢,最主要的内容,变量呢,讲完了以后,开发中我们特别常用。啊,大家熟悉熟悉以后呢,我们还会翻来覆去的去用啊,通过不断去使用呢,大家再去熟悉就可以了。然后呢,第二个重点叫做运算符,来我们来看一看运算符的事儿。呃,其实前面呢,我们已经用到过一些运算符了,哪些算呢。太多了。诶,同学说加算加没问题哈,这其实都算。这个呢叫对负值运算符。对,包括呢,咱们像这个也算这叫连接运算符,对,包括咱们去演示,呃,自动类型提升,强制类型转换啊,这个加法,这个咱们这也是运算符,其实呢,已经用到一些了,只不过呢,我们没有系统的去讲解,那下面的话呢,我们就系统来讲解,注意咱们讲这些运算符呢,诶都满足,对于基本数据类型来讲啊,除了波尔之外呢,诶都满足这样的一个规则。
01:00
啊,这都是适用的。行,那我们看一看,那么运算符的话呢,在Java这块呢。其实挺多的,别的编程语言也都有,但是呢,呃,稍微的会有点儿区别。啊,每一种语言呢,多少都有点儿特别的一些运算符,那我们来看看Java里边的整体来分,按照功能来分的话呢,分成算术运算符,赋值运算符。比较或者叫关系运算符,逻辑运算符,位运算符,条件运算符,还有拉姆达运算符,哎,我相应的把这个呢都罗列到这儿了。那咱们这块呢,先讲的话呢,是这些这个的话呢,呃,其实也可以呢,类似的涉及到叫拉姆达表达式了,里边用到了一个拉姆达运算符,我们放到这个新特性的时候呢,再专门去讲,所以我们先讲这些啊,这些讲的话呢,我们就按照这个顺序来讲,先整体上来说一下,这些运算符当中开发呢,都算是比较常用的啊,唯独有一类呢,不太常用。就是这个。那位运算符这个位运算符呢,呃,一个呢不太常用,第二的话呢,也比较难一些,第三的话呢,我们也想不起来用。
02:07
哎,所以这块我们讲的时候呢,把它也说一说,大家知道是怎么回事就行,等咱们后边呢,讲到集合的时候啊,讲集合框架的话呢,我们看源码的时候呢,就会看到呢,这样一些符号的身影。用它的目的呢,是为了提升开发的一个效率。啊OK行,这个我们说到这时候再说它呢,不是特别常用,我指的是咱们开发啊,不是特别常用了,所以呢,前面其他的这些呢,诶需要大家呢来掌握,哎他呢可以暂时呢先抠出去。讲到这个,呃,集合框架的时候呢,我们再详细的再说一下,那么针对于其他的这运算符呢,我们就按照这个顺序来讲解了。好,这是我们说的其中的一个分类的角度,第二个分类角度呢,针对于它操作数的一个个数,分成了叫一元运算符,二运算符和三运算符,哎,你可以叫哎单目双目和三目,就是元呢,就是变量的意思啊。咱们像中学讲过一元一次方程。
03:03
对吧?哎,比如说这个X加五等于七,这是一个方程,这不就一元就一个变量,一次就是一次幂是吧?啊那么这是一个,如果说你是这样的啊,X加Y啊等于七啊,3X啊加2Y啊等于五,这俩合在一起,这叫什么?二元一次方程组是吧。哎,这不这样去解吗。OK啊,这个次呢,就是指的这个次元,指的就是变量的意思啊,那这里边儿的元呢,也是指的变量的意思。你比如说我们这个正号负号啊正。五负六啊说这有个变量,变量I加加这个I呢,就只有一个变量,这就是一元的二元呢,就是I加接。啊,俩变量的是吧,三元上浮就是涉及到三个变量三个位置的。行,讲到这儿的话呢,我们具体大家细说,OK,那么接下来的话呢,我们就按照这个顺序呢,先来讲一下,叫算术运算数。算数音符呢,一共是有这么多。
04:00
正号负号加减乘除取模。加加减减连接。哎,那么这些符号呢,算是Java呢所特有的,其他的这些呢,哎,当然这个符号有有的语言呢,用的这个符号不太一样啊,当然呢,也多少可能也都存在这个连接的这个作用,有的呢是用这种双竖线啊等等的表示的啊。呃,那么这个符号呢,是咱们Java所特有的一些。呃,这个加加呢,你看又分成了叫前加加和后加加。啊,有点意思,所以呢,我们诶先来讲一讲这个算术运算符啊,是怎么回事儿啊,新建一个Java文件。算术呢叫arithme啊,我就简写了啊,AR的一个test。CTRLCCTRLSCTRLV保存。来写一下啊。这个呢,我们来测试啊,算术。
05:00
哎,这样说吧,测试运算符的一个使用。使用一啊,因为咱们有好多人呢,叫算术。哎,运算符的一个使用啊好,那么首先的话呢,我们说呢,都有哪些算术运算符。回忆一下啊,加按正号。负号加减。长。除。取模。对,或者叫取啊都行,然后呢前加加。哎,后加加。这个都是英文格式下的这个符号。然后前减减后减减。这个呢是咱们要讲的一个重点。然后还有一个呢,叫连接。所以这个符号的话呢,它有三个作用啊,正号加连接。行,这呢,我们说的是第一个问题,然后呢,接下来的话呢,我们就来看看啊,这里边儿这些符号呢,怎么去用,那咱们就从前往后说吧。
06:00
这其实都不用说啥了。加你要会减也会。成的话呢,也没啥问题,哎,除的话呢,可能会出点问题。哎,那么从这个除这块呢,咱们来说啊,In一个I,嗯。I吧,诶M吧。这是十啊12吧。然后呢,一个N1呢是五。好,现在这个一呢,去除以这个N1。结果是,即。啊,这个结果的事儿啊,这个结果的话呢,如果要用个变量来接收啊可以。对,这就涉及到了一个K的结果。哎,刚才大家说了,这个应该是二。哎,可以。首先呢,我们来看这儿啊,这呢是一个int型,这是个int型,它的运算呢,就符合咱们讲的,哎,自动类型提升这个规则了,整形int int,结果还是int,所以没问题,所以结果还是in的啊,所以12除五的话呢,按照咱们上小学来说,应该是2.4是吧。
07:01
但这个点四呢,不能要啊。哎,所以呢,这个结果呢,就是二。哎,加C。诶,你看这个结构就是二。哎,这个呢是没问题的,好,那这个要清楚的话呢,紧接着。哎,这个呢,我们,哎,我就这样写吧,M1除以一个N1,我再乘以一个N1。哎,这个咱们上小学的时候是这样讲的啊,说呢,这个数除以一个数,又乘以这个数,这俩就抵消了。哎,再乘以一个N1啊,是不是这样就消掉了。啊,这是M1是吧,啊,注意这块呢就不对了。对,这个呢,咱们刚才说了是二嘛。二再乘以一个五,这就变成十了。啊,这个小细节呢,大家要注意一下。
08:00
这儿呢,就咱们说这个除法这块呢,大家稍微的注意的这个事儿就行了,别的就没啥了。咱说的是这个除法。哎,就他啊。行,然后呢,咱们看下边这个符号。这个呢叫取模或者呢,你叫取都行。哎,叫取余的可能更形象点,就是余数的意思啊。嗯,这个呢,我们再去定义啊,这个M2这个呢是12。或者我再换一组。I1这个12。啊,J1这个是五。啊,现在我们去计算一下它的这个结果。那这个叫IE啊,直接呢叫取模结一,这个结果呢叫取余数的意思,那是几啊。哎,余数呢,就是二。嗯,来看一眼。编译啊,运行还二行,大家可能会说啊,这这多简单,一看就知道是吧?哎,那么大家实际在开发的时候呢,经常容易把这个除号跟这个取模啊就懵了。
09:09
其实呢,他取的是。商。对吧,哎,这个呢,恰好取的是那个余数,别整乱了。呃,有的时候呢,你发现呢,明明你想是想取余数呢,结果就整了个除法了,结果取成那个商了啊哎,这个大家用的时候呢,稍微的小心一点。啊,小心点,那么在开发当中啊,咱们这个符号什么时候用呢。诶,我们说开发中啊,说经常用来。判断哈,哎,某个数。哎,某个数是否能整出另外一个数?啊,那么能整除的话呢,就意味着我除完以后呢,这个结果是零是吧。哎,比如说某个数咱们叫NUMBER1吧,诶是否能整出另外一个数,我们叫NUMBER2,诶咱们就会涉及到这个NUMBER1,如果你要是取模这个NUMBER2呢,这个结果呢是零。
10:07
这个在咱们,哎这个代码当中,咱们一会儿呢,要讲的这个叫。比较运算符啊,这里边儿有这个啊,这叫等等。哎,相当于我们就判断一下这个你去摸完以后呢,是不是等等于零是吧。哎,就这个意思。啊,你比如说咱们提到说,诶你这个一是不是个偶数啊。对,比如判断NUMBER1是否是偶数,哎,那我们就是这个NUMBER1呢,我就取模二呢,看看你是不是零。啊,你要是不是奇数呢。判断你是不是不是零。对这个呢,就要等于零,不等于零的是是这个啊。哎,这个咱们还没讲呢啊诶这就行了,这是我们开发中比较常用的这个场景,行,这就说完了,那下一个问题的话呢,就是呃,我们如果说这叫除法,它呢叫被除数,它叫除数的话呢,这个位置呢,你可以叫呢被模数,这叫模数。
11:08
那么呃,被魔术和魔术一般的话呢,都是正的啊,那万一要是有负的话呢,这个结果怎么看待呢。诶,稍微的咱们多说两句。嗯,大家看啊,这呢是魔术和被魔术都是正的啊,这个我首先改一改啊,这个是二的。这个咱们改成三。可以改成四。好,然后这呢全是正的,这个呢,我让这个被魔数是负的。这个呢,让这个魔术是负的。这个让他俩都是负的。咱们看一看这个结果。编译运行好看一下二负二二负二。二负二,二负二。
12:02
行,那么我们看看这个规律呢,应该怎么说呢?哎,这个呢,你发现跟他一样,这个呢,发现还是跟他一样,这个发现还是跟他一样,这也同样道理。诶,通过这儿呢,我们总结的这个小结论是吧。呃,就是呃取模以后啊,这个结果或者叫这个模数叫余数啊,呃与被模数的符号。相同。对吧,哎,与被魔数的这个负二呢相同,哎,这个呢,稍微关注一点啊,万一要是有负的话呢,你想判断这个结果是不是负二啊,你得你知道啥意思啊。行,那么关于这个魔术这块呢,就说完了啊,开发中呢,就这样用啊,以后呢咱们会见到啊,接着呢,我们就来说一说这个前加加后加加了,前加加如果你要理解了,后加加呢,也就理解了。所以呢,咱们就先说一下这个加加的事儿。
13:01
哎,前加加后加加。首先啊,哎,我们说这个加加是什么意思啊。这个加加的意思呢,表示的是叫加一的意思。或者用加音呢,不是特别准确啊,应该准确的说呢,叫自增一的意思。诶说自增一跟加一不一样吗。还不太一样啊,一会儿我跟你说为啥不一样啊,好,这叫自增一,那它俩的区别在哪呢?哎,就是有可能我们会涉及到其他的一些运算了啊,比如说啊,你看我现在写他俩的这样的具体的例子,我这是A呢,是十。哎,A1啊,A1是十,然后这个B的话呢,我是加加A1。这是一组啊好一个A2是11个B2呢,是A2加加。你看主要的区别呢,就是一个是先的,一个是后的。我们关心的就是结果。是什么样子的?
14:12
嗯,是他。AR。第二。我们就能看出来它俩的一个主要区别了,区别呢就在于说,诶说你这个A1也好,A2也好,它表示都是自增一的意思哈,那关键就是我们这呢,还涉及到一个负值的运算。那这里边儿就涉及到你是先自增一再赋值还是呢,先赋值后自增一。来,我们看一看这个结果。编译运行好出来了。就他。哎,A1这是11。啊,这个咱们这样得了啊。哎,这是他的这个结果。
15:01
哎,这是它的一个结果啊,那么从结果上来看,这个B1呢,那就是首先A1和A2它俩都自增一了啊,都是11,关键呢,就是B1和B2不一样。所以呢,嗯,你从这儿来看的话呢,相当于是先。质证的意义。后负的值是吧。所以呢,B1呢也是11,而他呢。先把A2的这个质量给付给B2了。哎,然后呢,你自己又自增的一,所以导致我们B2呢,这个值呢,就变成十了。行,哎,那这个呢,结论就非常的清晰了,哎,我们要是表述的话呢,这块怎么写呢。前加加,或者叫先加加。怎么着?先加加或者叫先加加,先加加,那就是先加一,或者叫先自增一是吧。先自增一,然后呢,再。哎,在咱们这里边儿呢,就是负值是吧,而这个呢。
16:03
后加加啊,后加加,你就是后加一的意思了,那你就是先。负值是吧,后自增一。诶其实也比较,呃,能够凭我凭我没有感性的去理解啊,那这块我稍微动一动啊,咱们这个里边呢,是诶用的叫赋值,那也可能我们之间的叫加加I1,我判断它是不是大于五。啊,这呢就不是负值了啊,所以这块呢,我们把它改一下啊,就是先自增一再运算是吧。哎,可能是别的运算,这个呢,就是先运算。哎,然后呢,再后四增一。啊,就是这样的意思。哎,这呢,我们就呃说清楚它的这个区别了。啊,大家呢,体会一下啊,他俩呢,还是不太一样的,嗯,那我这个说完之后呢,我说说这个事儿啊。下面就我们这个。嗯,这个叫说明意吧,或者叫练习意。
17:00
哎,大家你看这个事啊,我现在印一个I,这个I呢是十是吧。你说我这样写啊,我哀加加。然后呢,我下边去打印一下这个纸。哎,这个呢,是不是所有的同学应该都知道是几啊。11是吧。哎,这呢,我是这样写的啊,有同学说,诶,我这样写,我不这样写,我这样写啊。问,这俩有区别吗?啊。答案是一样的是吧?诶答案是一样,而且这个过程当中其实没有任何区别。诶,同学,同学说你凭啥这么自信,说这俩没有任何区别呢,因为我真的看过他的字解码。啊,就真的没区别啊,我就先不带大家看了啊,咱们讲基础阶段呢,我我我会带大家去看了,在相应的节点的时候啊,让你感受感受,什么叫直接码呢?就是咱们编译完以后生成的是不是都是这个随码文件是吧。你会发现呢,我这块呢,跟你那块不一样,我这是用那个工具。
18:02
是这个工具。这个你要有兴趣呢,你自己百度,你把它搜一下,下载一下也行,哎,这个工具咱们刚才开的是哪个文件。咱叫是吧,是他吧,是他吧,这就这个呗。这个我双击。我就用这个软件打开了,打开以后的话呢,诶像这里边儿呢,这都是属于咱们的叫自解码文件了,一打开这就全是自解码指令。哎,我看这个指令了。呃,看完指令之后呢,发现没有区别。哎,这呢,就是真的到根儿上了。你不用去百度啊,百度可能也没人去说这个事儿是吧。嗯,行,就这样看啊,哎,你说诶这个感觉挺高级的是吧,这个在哪讲呢,这个呢,在GM这的这套课程当中讲的。啊,这个你可以去B站去搜是吧,诶我录了一套GM这个课,然后呢,里边专门讲这个事儿了,但是你现在不要看啊。现在看了估计你就放弃了是吧。这个回过来啊。啊,这俩没有区别啊,呃,因为出现过这个,呃,面试题有的去问说这俩有什么区别,这个你知道啊,这是我们说的第一个事儿。
19:07
好,第二个是。刚才呢,我在讲这的时候呢,我说过啊,哎,我说呢,自增一和加一呢,还是有点区别的。在这儿看呢,你看不出来,我再举个例子你就能看出来了。的10。如果我要是这样写的话。怎么着?编译就报错了。编译啊就挂了啊,说59行啊,你这个呢是啊int类型的,你你复制给bet了,呃,Short了不行。对,因为呢,这是int。常量啊,Short加上一个int,结果是int,你非得写成SE,这叫编译不通过。在这写一下。诶,编一步通过啊行,如果你非要这样写,你也得这样写。
20:03
在这块呢,加一个括号是吧。然后在前边儿这块呢,加一个short。哎,这样的话呢才行,而且这个结果呢,确实是11是吧。一啊,保存。编译。运行,哎,那确实11没问题啊行,这个呢,就是咱们原来你非要让这个short型的这个十呢,变成11,那就加个一,那现在的话呢,我们,哎是不是讲过这个叫自增了。嗯,咱们这么着吧,我这写一个算式叫方式一吧。这样写也不靠谱,你得这样写好。下面我们来看这个方式二。放这儿的话呢,我把这个呢,就先给它注释了。然后呢,这个一呢还是十,我呢就直接呢,让S1呢下架了。这时候呢,他就是11。这个都不用测了啊,哎,肯定是11了,那那么区别就在于说这个呢,就是加一,这个呢就叫做自增一。
21:06
区别在于这儿,你看啊,上面这种方式呢,Short是占两个字节。一个框是一个字节,它呢是十,然后加上个一,这个一呢是一个int型的。哎,是不是这么样。哎,加完以后的话呢,你想结果是不是肯定是以长的为主啊。哎,这个结果是11,然后呢,你来个强转,现在你把这个高位这块呢,是不是就截断不要了。哎,所以这个结果呢,诶是11,这是咱们的第一种方式是这样来理解的,而我们这样的话呢,首先它就是一个short。这叫自尊以。就在这个基础上呢。加了个一。诶,他没有涉及到这块呢,诶这个事儿。啊,它就是块增的意义,相当于从内存空间上呢,是不是还省了这个事儿了是吧。啊,这你有俩变量又加了一个,这算是三个空间,这呢,就只有这一个啊。所以这个呢更好一点。哎,更好一点啊呃,那么真正开发的时候呢,你要写,呃,有同学可能说咱们要说肯定是这样写是吧。
22:03
这样写主要还是比较方便啊,另外一点的话呢,节省内存空间。但这个事儿的话呢。在这个问题上,嗯,也可以不说了,为啥呢?啊,因为在实际开发当中,大家浪费的空间呢,何止这么一点点呀。啊,你浪费在那海了去了是吧?哎,不要在这个细枝末节上去揪这个说多了一个四个字节,那那都是可以忽略不计了,都是吧,OK啊,所以主要还是这个写的方便啊,然后呢,也省着你做墙转了。嗯,行,这儿呢,就咱们说的这个点啊,大家去注意一下,所以呢,在开发当中,如果说涉及到我们想实现这种叫自增一的这种操作的行为,哎,这个大家呢,你就使用这样的方式啊就行。嗯,好了,那么关于我们这个加加这个事儿呢,咱们就说到这儿,呃,这个说完之后呢,我们再来看这个叫减减啊,那就比较简单了。嗯,这个我这么找一下吧。
23:03
哎,先把它粘过来。这个CTRLC啊,咱们这一波一波的啊。哎,这是一波了。嗯,在这儿,这是一波。哎,上面这一波啊。嗯。这个前年年,后年年,基本上大家也能够猜出来它是什么意思了。来根据我们上面这样的一个经验来。哎,我把这个呢,实际上呢,就可以直接呢给它粘过来了。这个减减的话呢,就是减一的意思了,所以说它呢就要先自减一。哎,然后呢再运算,哎,它呢对应的就是先运算。哎,在。哎,质检一。哎,这就可以了。这个还用测试吗?就不用了是吧,哎,所以这块我们就直接略了啊行,咱们这边也有Co的练习题,哎,这个完了以后呢,然后再往后呢,这叫连接运算,咱们讲string的时候呢,已经说过了。
24:07
这块再强调一下,这个符号呢,只适用于string和啊,咱们提到这个基本数据类型变量之间做运算的这个事儿啊。啊,这个符号呢,如果我们看作叫连接符的话呢,逗号啊,只适用于string。鱼。哎,其他类型的。变量间的运算。啊,而且呢,这个运算的结果。啊,也是,哎,死砖类型。哎,这个是没问题的。OK啊,这呢,就是我们说的关于这个,呃,叫算术运算符啊,这里边儿这些符号的一个基本的情况。好,那么这个基本的使用呢,说完之后呢,咱们来看一看这个课后的这个题目啊。嗯,这个呢,就有一些例子了啊,诶这个看下这道题。
25:02
哎,这个是array的一个练习。哎,大家看这个题,哎,好做不?嗯,说随意呢,给一个整数打印呢,显示它的个位,十位和百位,当然这个整数呢,咱们,呃,这个严格要求点啊,给一个三位的一个整数。啊,就是呃几百啊这样一个数,呃,然后呢,希望你把它的这个呃,个位十位百位呢给他打出来,如果这个数呢,比如是153啊,个位是三,十位是五,百位是一,这个看看咋弄。哎,我这就number,比如说就是153吧。先找百位还是个位呢?其实都行啊。嗯,那就先各位吧,啊,那各各。哥。确定一下哈。
26:01
啊。呃,怎么整?十是吧。啊,这个想想啊,153除以十先上一个一。是十,然后53,再上个五一个三,诶是不是就行。好,那接着呢,你来一个十位吧,咱就这样写了啊,这是个位。啊,那十位怎么着。把五弄出来。哎,除以十啊。行,那那么要除以十,结果多少?15。然后呢,再取模。不对,曲模了。除以。哎,不对不对不对,15是吧,哎,取模十是吧,哎这个呢,就是百位吧。哎,十位。其实这个十位呢,是不是还有别的方式啊。你看我是先除的十,得到的是15是吧。
27:00
那我要是。嗯,印的一个十位。我要是先想得到53呢?是不是我可以取摸一下100啊?最后就得到53了。然后呢,在。除以一个十。就得到五了也行是吧。或者。啊,这个方式呢不唯一,然后呢百位的。Number呢,除以100。哎,这就可以了啊,行。哎,这个咱们写一下啊,说个位。是。各位啊。就是这个代码的话呢,大家还是得多写,我看有同学呢,这个目前敲的话呢,还是比较慢一些的,就是你就是通过多去敲,多去写,多让自己报错就好了,你像这里边的很多的规则呀,也不一定非得是来自于书本,来自于我来讲了很多这个点呢,大家你自己去测是吧?诶你测了你就知道他是什么样的情况了。
28:04
嗯,完事了啊,然后Java c。来编译。诶,这个呢,就出来了啊153是吧。没问题啊,行,这儿呢,是我们说的这一道这样的一道题目啊,然后呢,如果说让你获取一个四位数,求它的个位,十位,百位,千位。其实也类似是吧?哎,这呢,大家你可以做一晚上的一个练习,哎,试着来做一下啊。然后这块你看还有一个这个题目啊,这个呢其实也不难。哎,看看这个啊。哎,这个题。哎,保存一下啊。说呢这个为抵抗洪水,这个战士的话呢,连续作战了89个小时,问哎,一共是等于多少天,多少小时。
29:00
这是一个整数是吧。89,那怎么算呢?哎,二除以。我这用的是除是吧。得到的这个商呢,是千。嗯。这个取模。24呢,哎,就是小时了。哎,这个呢,哎共。哎,奋战了。A。诶,你看我这块怎么去拼串。天灵。啊。这个hour。小时。哎,这样。哎。对吧。嗯,好,测试一下。哎,共翻战了奋战了叫三天017个小时。
30:00
啊,这就行了啊行,这就是我们说简单的这个,呃,运算符的一个使用啊,然后呢,这块还有相应的这个题目,这个我就不说这道题了啊涉及到呢,我们I和接,然后呢,这是叫后加加,这叫先加加啊这个后这个后减减先减减,哎这个呢,你自己呢算一下,算完之后呢,你把它跑一下啊,你就知道你做的对错与否了。好看这个啊。五加五等于这个结果呢是多少?是这个吗?五加五等于这个结果是长这样吗?哎是是吧,哎是是长这样,有点懵了啊,在这塞一下。哎,咱就放这儿吧。额外的诶练习一是,诶往这一放保存。
31:01
编译运行,哎,这不就长这样吗?如果呢,你希望呢,它是十怎么办?哎,这块呢,我们跟小学一样啊,用这个小括号。小花呢,就先预算了。嗯,这个就行了。哎,那就就是。哎,先预算啊。好,再回过来。嗯,这个呢。这个有点意思了。看一下。这个呢,是个BAT127已经到头了。加加一下呢。编译报错吗?想想。注意对对,注意这个不报错啊,嗯,不改变类型,咱们也说过了。啊,不改变这个数据的类型,这个咱们在这块呢,好像没有写这个知识点是吧。
32:01
呃,通过这个呢,我们强调一下啊。嗯,这个叫方式二啊,这个加加。先写到这儿吧。啊,这个我们说加加,哎或。这个减减运算。哎,不会改变。哎,变量的数据类型,这个很重要。诶这个呢很重要,好,那么回过来这块呢,既然呢,你这是一个BA呢,加加也不会改变你的类型,所以说呢,首先它不会报错哈,但是你让它等于128这个事儿有点勉强他了。那那那这是几啊。那就。诶负128你可能有点儿接受不了,但是这个事儿的话呢。怎么怎么怎么看啊。对,其实咱们已经讲过了啊,哎,你看这块我们一清,这是单字节的,这是127 127是不是长这样,你在这个基础上,你给他加一,这不就一串往前进位进位,最后就进完,这是最高位是一,后边全是零了。
33:11
但因为你就是个bad,所以呢,瞬间就变成个负数了。那就是负128。哎,就就完事了啊。行,然后呢。哎,这个大家呢,好像,呃,这个。这个题其实好像还可以啊,下边这个呢,其实就很恶心了。来稍微呢,占用大家几分钟时间,咱们把这个说一下吧。就是大家呢,现在呃,咱们讲到第二天呢,能感受到这个编程的乐趣吗。还是感觉说很痛苦啊。哎,应该是痛并快乐着是吧?嗯,你看这个啊,这是一。看着有点头大啊。首先说一下,开发中咱们不要这样去写。你自己都整不明白的你是吧。
34:02
哎,不要这样写啊,好那。分析一下啊。这个。怎么弄啊?I呢,是一。从前往后这样去走啊,这个呢是后加加是吧。所以这时候呢,我们注意哈,我们实际上是拿这个一呢,是参与这个加的运算的。但是这个呢,把一取出来之后呢,I呢,它已经变成了。二了。啊注意啊好,I这个一加上这个位置的话呢,叫加加I。先加了个一。所以这块呢,我们实际上是让三参与运算的。I呢,也变成了三了。啊,先加加不就是先加一的,先自增一的意思吗?所以它变成三了,然后让三参运算,然后再去乘以。哎,后加加呢,就是后加一了啊,所以呢,让三参与运算,然后它变成四。哎,所以这个结果呢,这个I呢,就是四阶呢。啊接呢就是十啊这块我们就没有打印A打印I呢也没啥用,为啥呢,只要你I加加过哈。
35:00
它永远只要你加加一次,不管是先加加还是后加加,它永远都是加一,所以你打1A的话呢,它有三次,那肯定它就是。四是吧。嗯,对啊,所以说这块我们看一下。哎,这个是不是十是吧?哎,刚才我们说的这个是十啊。啊,如果这个问题你还能够忍受的话呢,下边这道题基本上能够。全军覆没啊。诶,我说能够全军覆没,看我说的有道理没有。这个名好像冲突了是吧。那我不妨把这个给他。注释一下得了。看这。这是I等于二阶呢,等于I加加皆是几?这个题呢,这块有点侮辱你智商是吧。哎,我放它呢,主要是为了让你能够缓冲一下哈。啊,我这个M定义过吗?没有好看这啊,M是二。
36:02
你没这样写过?以后呢,也不要这样写哈。哎,这个呢,就是面试题恶心你的啊,这个呢,咱就先删了就啊。问及。哟。知道啊。啊,刚才试过了是吧。啊二啊行,为什么。啊,为啥呢?那这个呢,其实啊,如果要解释为什么的话呢,其实咱们就是看那个自解码文件啊,会非常的清楚的。啊,这个我当时我最初解决这个问题的时候呢,说实话我是百度的。很早了是吧,特别早的遇到这个百度的,呃,然后呢,总感觉差点意思,后边你再去研究,你发现呢,诶你说百度的讲的那些人,他咋去弄出来的呢。是吧,哎,其实你追根溯源啊,就是在资金码文件当中,他就暴露了这个事儿,他是怎么做的了。
37:03
咱们刚才也编译过了。嗯,这是这个题目是吧。是这个吧。哎,我就直接双击就行啊。哎,这是咱们的一个方法,在这有个它的代码。啊,实际上呢,就在这块啊呈现的,当然这块大家现在看应该是很痛苦啊,那咱就算了啊,我就直接跟你说一下就得了啊。嗯,这样啊,咱们先说这个事儿吧,这个是I啊,这个值呢,它是二啊,然后呢,这个呢叫后加加。后加加呢,我们说叫先加A,实际上呢,它是先把这个A的值呢,先取出来,临时放到一个位置,A的值是不是二啊。好,我把这个位置就放出来,这个是二啊,然后的话呢,这个I呢就加加了。A加,加了是不是它就变成三了。然后把临时的这个值呢给了。哎,是这个意思。啊,那要这样说的话呢,那那这个呢。一个呃。
38:01
K吧,这是一个二是吧,一个嗯,KZ。啊,是一个K,呃,先加加K。反过来。这个咱们打印Z是吧,这个是几啊。三是吧,那这个怎么看呢?首先这是K,它的值是二,然后这个呢叫加加K是吧。哎,先呢,把它呢做一个。加一的运算。啊加运算值变成三了,然后呢,呃,其实这个时候呢,它也算是有个临时,呃,把这个三加完E之后呢,把这个值呢,再临时取出来,然后把这个值呢,再付给咱们这个Z。哎,就这样了啊好,哎这个呢,说完了,这个说完了,然后我们看这个事儿,这个呢,其实只不过在这个值这个变量呢,恰好是M而已啊。首先的话呢,我们这M12,然后呢,这个叫后加加。后加加呢,你就是后加一先呢,把这个M是二的这个值呢,先给它临时取出来,是不是二啊。好,然后呢,你把这个M加加了变成三了吧。
39:03
然后接下来你把这二呢又给了,像上面是给了接了,这个没给接又给了M了。所以呢,把三呢又改成二了。哎,所以呢,这个结果值是二。啊,是这样的情况啊,行,那这个事儿的话呢,大家你就听一下就完了。啊,这个呢,笔试的时候呢,考这也是非常小概率的,大家平时写的时候呢,给我们的一个纪念意义呢,就是你千万不要这样写啊。因为你洗完之后,你发现这个M没甲啊。你要真的想加一的话呢,你就按咱们上课讲的,你就你就这样写就完了,你别前面又画蛇添足,来一个S1,等于S1加加。没加成是吧。哎,就可以了,行,那么关于算术运算符呢,咱们就说到这儿啊,说的不少了,嗯,今天咱们就到这儿。
我来说两句