bool

内置布尔类型。

描述

布尔类型 bool 是内置的 Variant 类型,只能存储 true(真)和 false(假)的其中之一。你可以把它理解为开关,要么处于打开状态,要么处于关闭状态。也可以理解为二进制所使用的数字,只有 1 或者 0。

if 等条件语句中可以直接使用布尔值:

GDScriptC#

  1. var can_shoot = true
  2. if can_shoot:
  3. launch_bullet()
  1. bool canShoot = true;
  2. if (canShoot)
  3. {
  4. LaunchBullet();
  5. }

比较运算符返回的都是布尔值(==><= 等)。没有必要比较布尔值本身,因此不需要在这些比较后面加上 == true== false

布尔值可以和逻辑运算符 andornot 组合,构成复杂的条件:

GDScriptC#

  1. if bullets > 0 and not is_reloading():
  2. launch_bullet()
  3. if bullets == 0 or is_reloading():
  4. play_clack_sound()
  1. if (bullets > 0 && !IsReloading())
  2. {
  3. LaunchBullet();
  4. }
  5. if (bullets == 0 || IsReloading())
  6. {
  7. PlayClackSound();
  8. }

注意:在现代编程语言中,逻辑运算符是按顺序求值的。如果后续条件不会对最终结果产生影响,那么就会跳过对这些条件的求值。这种行为叫作短路求值,在注重性能的场合能够避免对开销较大的条件进行求值。

注意:根据惯例,返回布尔值的内置方法和属性通常都以判断题、形容词等形式命名(String.is_emptyNode.can_processCamera2D.enabled 等)。

构造函数

bool

bool()

bool

bool(from: bool)

bool

bool(from: float)

bool

bool(from: int)

运算符

bool

operator !=(right: bool)

bool

operator <(right: bool)

bool

operator ==(right: bool)

bool

operator >(right: bool)


构造函数说明

bool bool() 🔗

构造设置为 falsebool


bool bool(from: bool)

构造给定 bool 的副本。


bool bool(from: float)

float 值转换为布尔值。如果 from 等于 0.0(包括 -0.0)则返回 false,其他值则返回 true(包括 @GDScript.INF@GDScript.NAN)。


bool bool(from: int)

int 值转换为布尔值。如果 from 等于 0 则返回 false,其他值则返回 true


运算符说明

bool operator !=(right: bool) 🔗

如果两个布尔值不同则返回 true,即一个是 true、一个是 false 的情况。这个运算可以视为逻辑异或(XOR)。


bool operator <(right: bool) 🔗

如果左操作数为 false 且右操作数为 true,则返回 true


bool operator ==(right: bool) 🔗

如果两个布尔值相同则返回 true,即都是 true 或都是 false 的情况。这个运算可以视为逻辑相等(EQ)或者同或(XNOR)。


bool operator >(right: bool) 🔗

如果左操作数为 true 且右操作数为 false,则返回 true