【译】如何在Unity使用if语句运行代码
如果你想让你的代码有条件地运行,你需要用到的是“if”语句。
“if”语句被用在特定的条件下运行的代码,因而所有优秀的代码都有了逻辑美。
你将很少学习到有用的代码,而且很少有更强大的代码会对你的职业生涯有巨大贡献。
在实际上,让我们看看这篇文章的第一句话在Unity中的If语句结构。
这句话这么说:
如果你想让你的代码有条件地运行,你需要用到的是“if”语句。
我们可以将这句话分解成两节,在这里用逗号隔开。
句子的第一部分指明了条件,第二部分是在遇到条件满足的情况下,所发生的情况。
“if”语句也是一样的道理,尽管在语法上稍微复杂些。在单逗号格式化代码上我们还没有走上舞台。
在Unity中,我们用if作为if语句的开头,然后(在括号中)写上我们需要达到的条件。
如果大括号中的积极解决的条件在括号条件之后,代码将被执行。
通过用“if”开头,我们告诉编译器来指示处理器评估括号内条件的真实性。它可以被表述为一个没有灰色地带的判断题——我们叫它布尔值。
如果条件判为真,处理器就会接着处理大括号中的事情。
如果判为假,则忽视括号中的内容。
我们可以通过下图的代码证实这一点。
在这个例子中,我们使用三个分开的“if”语句来证明评估条件的不同方式,以及如果条件判为假的时候会发生什么。
在设置中,在我们开始运行代码之前,我们需要设置一个布尔值。
这给我们一个简单的条件来使用,由前两个if语句的执行模块修改,然后由第三个if语句评估真假。
然后我们声明并设置一个字符串变量:
这给我们一个值来评估前两个if语句,然后在之前的代码中设置布尔值的真与假。
有了这些变量,我们就可以继续编写if语句了。
前两个if语句比较了need后面设置的字符串和我们在语句中设置的字符串。
请注意结构,我们在比较的时候使用“=”,这里用的是“==”
这比较了双方的语句,如果双方相等,则会显示“真”。其他不同的运算符将在更详细的课程中讨论。
这里我们比较了need字符串的值,我们把它定义为“有条件的代码执行”。
当然,这两个值是相等的,所以显示的是“真”,大括号中的代码将被执行。在这个条件下设置布尔值为真。
“=”的用途是专门为一个值设置变量,而不是被混淆为前文所说的用于比较。
如果你像我一样,这将会在你理解这个区别前将你难住一段时间。
第二个if语句跟第一个有一些不同,除了它是假以外。
如果你亲自尝试一下这个代码,你会注意到无论你是否使用这些代码,当它属于假的时候,
它这个结果没什么区别——所遇条件依旧是真并且最后的if语句会显示出来。
最后一个if语句在一定条件下形式上有一些变化,而不是使用运算符来比较。它简单的接收布尔值,如果布尔值为真则评为真,如果是假则品味假。
这几乎是if语句所涵盖的基础。
当然,相比之下还需要做更多,比如,使用的充分程度是否满足要求?你还需要使用不同的比较运算符并在条件部分发挥你编写的语句,甚至你可以可以在大括号中随意发挥,比如更复杂的if的嵌套语句。
因篇幅关系,这里没有足够的空间来一一列举所有if的使用方法,即使我知道这一切都是为了更好的了解它们。
不过,我希望你们现在已经足够可以学以致用了。我也推荐Udemy上的Unity开发者课程,本录制的”使用if来做出选择”,这是一个很好的对这个主题的介绍。并且它还包括了另一个很有用的功能Input.GetKeyDown的相关细节。
关于作者:
大家好,我是Tom,是Unity开发者课程的学生。感谢Ben和Brice,让我短时间内学到了这么多。
就在几周前,我暂时性的将代码打印到控制台,现在我有足够的自信开始自己的项目。
我发表这些博客一部分是为了分享我所学到的,但更多的是为了让这些东西在我脑海里成形。
如果你感兴趣,你可以访问我的第一个个人项目Food Cart Expres,我会以独白的方式给你分享发展过程中的起起伏伏。
投入研究人群控制算法、菜单系统和错位鼠标点击让我的头发稀少了不少,但我更希望在我得出持久菜单内容的方法后偶尔的欢呼。
在任何情况下,它就在这给你看。你可以在它的勇气与光荣下看它发展,从中学习指点。
原文地址:http://www.completeunitydeveloper.com/blog/how-to-use-the-if-statement-to-selectively-run-code-in-unity
原文作者未做权利声明,视为共享知识产权进入公共领域,自动获得授权