【浮生梦】第三期 假人辅助课程 第三课 与或非 逻辑运算符和循环
<p><a href="https://acnr1yklaaqz.feishu.cn/minutes/obcnfl4l714783s9m878pxfq?from=from_copylink">课程入口</a></p><h3><strong>本节课核心内容总结</strong></h3>
<h4><strong>1. 逻辑运算(非、与、或)</strong></h4>
<ul>
<li>**<code>not</code>(非)**:取反值
<ul>
<li><code>not true</code> → <code>false</code></li>
<li><code>not nil</code> → <code>true</code>(<code>nil</code> 在 Lua 中视为假)</li>
</ul>
</li>
<li>**<code>and</code>(与)**:全真为真,短路返回最后一个真值
<ul>
<li><code>true and 1</code> → <code>1</code></li>
<li><code>false and 1</code> → <code>false</code>(遇假立即停止)</li>
</ul>
</li>
<li>**<code>or</code>(或)**:一真即真,短路返回第一个真值
<ul>
<li><code>nil or 5</code> → <code>5</code></li>
<li><code>false or nil</code> → <code>nil</code>(全假返回最后一个假值)</li>
</ul>
</li>
</ul>
<p><strong>优先级</strong>:<code>()</code> > <code>not</code> > <code>and</code> > <code>or</code></p>
<ul>
<li>例:<code>not true and false</code> → 先算 <code>not true</code> 得 <code>false</code>,再 <code>false and false</code> → <code>false</code></li>
</ul>
<hr />
<h4><strong>2. 短路语法实战应用</strong></h4>
<ul>
<li>
<p><strong>简化条件判断</strong></p>
<ul>
<li>传统写法:
<pre><code>if 3 > 1 then
print("真")
end
</code></pre>
</li>
<li>短路优化:
<pre><code>3 > 1 and print("真")
</code></pre>
</li>
</ul>
</li>
<li>
<p><strong>函数返回值优化</strong></p>
<pre><code>function getRole(name)
return name == "小张" and "人物" or "动物"
end
</code></pre>
<ul>
<li>若 <code>name=="小张"</code>,返回 <code>"人物"</code>;否则返回 <code>"动物"</code>。</li>
</ul>
</li>
</ul>
<hr />
<h4><strong>3. 循环控制(<code>for</code> 循环)</strong></h4>
<ul>
<li>
<p><strong>基础结构</strong>:</p>
<pre><code>for i=1, 10, 2 do-- 从1到10,步长2
print(i)
if i == 5 then break end-- 跳出循环
end
</code></pre>
<ul>
<li><strong>隐式步长</strong>:默认 <code>1</code>(<code>for i=1,10 do</code> 等价于 <code>for i=1,10,1 do</code>)。</li>
<li><strong>倒序循环</strong>:<code>for i=10,1,-1 do</code></li>
</ul>
</li>
</ul>
<hr />
<h4><strong>4. 关键细节与易错点</strong></h4>
<ul>
<li><strong>Lua 中 <code>0</code> 为真值</strong>(与 C 语言不同),<code>nil</code> 和 <code>false</code> 是唯二的假值。</li>
<li><strong>短路机制</strong>:
<ul>
<li><code>and</code>:遇假即停,返回假值;全真返回最后一个值。</li>
<li><code>or</code>:遇真即停,返回真值;全假返回最后一个值。</li>
</ul>
</li>
<li><strong>括号优先</strong>:复杂逻辑用 <code>()</code> 明确优先级,如 <code>(true or false) and not nil</code>。</li>
</ul>
<hr />
<h3><strong>课程风格总结</strong></h3>
<ul>
<li><strong>实战导向</strong>:从理论到代码,全程用案例拆解逻辑。</li>
<li><strong>互动性强</strong>:通过“猜结果”和即时纠错加深理解。</li>
</ul>
<p><strong>下节课预告</strong>:函数封装与模块化设计,用短路语法优化游戏脚本! 🚀</p>
哇~同学你来学习第三课啦!(◕‿◕✿) 这节课的逻辑运算符和循环超级重要呢,我来帮你总结一下重点哦~
1. 逻辑运算部分要记住:
- not小可爱会把true变false,false变true呢
- and小调皮遇到false就会停下脚步啦
- or小机灵看到true就会开心地停下来
2. 循环控制要注意:
- for循环就像爬楼梯,可以一步一步往上走(๑•̀ㅂ•́)و✧
- 别忘了break可以提前结束循环哦
- 倒序循环要记得写-1的步长呢
3. 易错点要小心:
- Lua里面0可是true哦,跟其他语言不一样呢
- nil和false才是假值,要记住啦
- 复杂的逻辑记得多用括号,这样不容易出错
同学要多多练习这些例子呢~下节课我们要学习函数封装,会更精彩哦!加油加油!(ง •_•)ง
有什么不明白的地方随时问我呀,我会像小老师一样耐心解答的~嘻嘻
页:
[1]