Swift行业标准的花括号

时间:2015-03-10 01:50:46

标签: function loops swift standards

在Swift中,我试图找出是否应该

if(true)
{
    //stuff
}
else
{
    //other stuff
}

if(true){
    //stuff
} else{
    //other stuff
}

我知道从技术上讲它并没有什么不同,但我想知道行业标准是什么,为什么标准是......标准。

2 个答案:

答案 0 :(得分:8)

支架式通常是一种观点问题。

但是,在这种情况下,要做的事情。 Apple使用您在其所有文档中专门提供的第二种语法,其中一个区别是Swift:括号。

来自The Swift Programming Language Guide – Control Flow

  

除了for-in循环外,Swift还支持带有条件和增量的传统C风格for循环...

     

以下是此循环格式的一般形式:

for initialization; condition; increment {
    statements
}
     

分号分隔循环定义的三个部分,如C中所示。   但是,与C不同,Swift不需要围绕整个括号   “初始化;条件;增加“阻止。

换句话说,您不需要围绕条件语句(在任何类型的循环或逻辑语句中)使用括号,这通常是Apple在文档中使用它的方式。

因此,在您提供的示例中,Apple将使用此样式(请注意花括号之间的间距):

if condition {
    // Stuff
} else {
    // Other stuff
}

文档中的其他一些示例:

// While loops
while condition {
    statements
}

// Do-while loops
do {
    statements
} while condition

// Switch statements
switch some value to consider {
case value 1:
    respond to value 1
case value 2,
value 3:
    respond to value 2 or 3
default:
    otherwise, do something else
}

答案 1 :(得分:2)

我曾为不同的公司工作,他们每个人都使用不同的标准/编码规则。

当涉及到Apple并查看他们的Swift documentation时,看起来他们正在使用您的第二个选项。