【问题标题】:Declare and initialize variables or constants on the same line in swift 5? [duplicate]在swift 5的同一行声明和初始化变量或常量? [复制]
【发布时间】:2020-07-02 00:17:38
【问题描述】:

我看到这是有效的 swift 代码:

var R, G, B, opacity: Double

由于这段代码可以毫无问题地运行,假设我想将上述所有变量设置为 0.0,如何声明和初始化它?因为let R, G, B, opacity: Double = 0.0 会抛出 Type annotation missing in pattern 错误

我知道 Python

a = b = c = d = e = g = h = i = j = True

或 JavaScript

var a = b = c = d = e = g = h = i = j = true

【问题讨论】:

标签: ios swift


【解决方案1】:

赋值运算符 (=) 不返回值,以防止在使用等于运算符 (==) 时错误地使用它。 – https://docs.swift.org/swift-book/LanguageGuide/BasicOperators.html

let (R, G, B, opacity) = (0.0, 0.0, 0.0, 0.0)

是你能做的最干净的,但你真的应该做一个结构。

struct Color {
  var (r, g, b, opacity) = (0.0, 0.0, 0.0, 0.0)
}

【讨论】:

    【解决方案2】:

    您可以定义多个相同类型的变量,如下所示:

    var R, G, B, opacity: Double
    

    或者

    var R = 0.0, G = 0.0, B = 0.0, opacity= 0.0
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-02-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多