gramática básica Swift
Na seção anterior, nós já falamos sobre como criar a linguagem Swift "Olá,! Mundo" Programa. Agora chegamos à próxima revisão.
Se você está criando uma necessidade de introduzir OS X parque Cacau:
import Cocoa /* 我的第一个 Swift 程序 */ var myString = "Hello, World!" print(myString)
Se queremos criar iOS campo de jogos que você precisa para introduzir UIKit:
import UIKit var myString = "Hello, World!" print(myString)
O programa acima, a saída é:
Hello, World!
O código de cima é a estrutura básica do programa Swift, em seguida, descrito em pormenor parte da estrutura.
Swift introduzido
Podemos usar a instrução deimportação para introduzir um quadro de Objective-C (ou biblioteca C) para o programa Swift.Por exemplo declaração deimportação de cacau para importar a biblioteca e usar a API Cocoa, podemos usá-los no programa Swift.
-se de cacau é escrito em linguagem Objective-C, Objective-C é um superconjunto estrito da linguagem C, para que possamos usar em simples código Swift linguagem mistura C, ou mesmo código C ++.
marca Swift
Swift programa a partir de uma variedade de sinais, os marcadores podem ser palavras, identificadores, constantes, corda, ou símbolo. exemplo Swift, o seguinte programa consiste em três fichas:
print("test!") 标记是:单词、符号 print ( "test!" )
nota
Os comentários de Swift com a linguagem C muito semelhante ao de uma única linha comentários começam com duas barras invertidas:
//这是一行注释
comentários de várias linhas começam com / * a * / fim:
/* 这也是一条注释, 但跨越多行 */
comentários de várias linhas e linguagem C é diferente, o multi-linha de comentário Swift podem ser aninhados em outros comentários multi-linha dentro. Formulação é inserido em outro comentários multi-linha em um bloco de comentário de várias linhas. O segundo bloco de comentário quando fechado, então ainda atrás do primeiro bloco de comentário:
/* 这是第一个多行注释的开头 /* 这是嵌套的第二个多行注释 */ 这是第一个多行注释的结尾 */
comentários de várias linhas de nidificação é que você pode obter mais rapidamente e facilmente no bloco de comentário, mesmo se o bloco de código já tem um comentário.
ponto e vírgula
Ao contrário de outras línguas são, Swift não requer o uso de um ponto e vírgula no final de cada linha da demonstração (;), mas devem ser separados por um ponto e vírgula no mesmo número de linhas declaração escrita:
import Cocoa /* 我的第一个 Swift 程序 */ var myString = "Hello, World!"; print(myString)
identificadores
Identificador é dar variáveis, constantes, métodos, funções, enumeração, que especifica o nome da estrutura, da classe, e outros protocolos. Cartas que constitui identificadores são certas normas, nomeando identificadores de idioma Swift como segue:
Maiúsculas e minúsculas, Myname com myname são dois identificadores diferentes;
Os identificadores primeira personagem pode (_) ou as letras começam com um sublinhado, mas não pode ser um número;
Identificadores podem existir outros caracteres sublinhado (_), letras ou números.
Por exemplo: username, User_Name, _sys_val, altura e outro identificador legítimo e 2mail, sala # identificadores ilegais e de classe.
Nota: carta Swiftusa codificação Unicode [1]. Unicode é chamado o sistema de codificação unificada, que contém a codificação de texto da Ásia, como o chinês, japonês, coreano e outros caracteres, e até mesmo emoticons usamos a ferramenta de chat
Se você deve usar palavras-chave como identificadores, você pode adicionar acentos em torno das palavras-chave ( `), por exemplo:
palavra chave
Uma palavra-chave é uma sequência de carácter reservado semelhante a um identificador, a menos que a utilização de acentos ( `) para incluir, ou não pode ser utilizado como identificadores. Palavras-chave são um significado especial pré-definido para o identificador compilador reservados. Palavras-chave comuns quatro seguintes.
E as demonstrações palavras-chave relacionadas
classe | deinit | enum | extensão |
func | importação | o init | interno |
deixar | operador | privado | protocolo |
público | estático | struct | subscrito |
typealias | var |
E as demonstrações palavras-chave relacionadas
pausa | caso | continuar | omissão |
fazer | mais | fallthrough | para |
se | em | retorno | interruptor |
onde | enquanto |
Expressão e tipo de palavra-chave
como | dynamicType | falso | é |
zero | ego | ego | super |
verdadeiro | _COLUMN_ | _FILE_ | _FUNCTION_ |
_LINE_ |
Palavras-chave usadas em um contexto particular
associatividade | conveniência | dinâmico | didSet |
final | obter | infixo | inout |
preguiçoso | esquerda | mutação | nenhum |
nonmutating | opcional | override | postfix |
precedência | prefixo | protocolo | necessário |
direito | conjunto | tipo | sem dono |
fraco | willSet |
espaço Swift
Swift não é uma linguagem como C / C ++, Java ignorar tão completamente espaços, a utilização dos espaços de Swift ter certos requisitos, mas ao contrário de Python recuado exigências menos rigorosas.
Em Swift, o operador não pode ser seguido imediatamente em uma variável ou constante. Por exemplo, será dado o seguinte código:
let a= 1 + 2
A mensagem de erro é:
error: prefix/postfix '=' is reserved
Provavelmente significava diretamente com o sinal de igual na frente ou atrás de este uso é reservado.
O código a seguir está sendo dado (observe o espaço continuação):
let a = 1+ 2
A mensagem de erro é:
error: consecutive statements on a line must be separated by ';'
Isso ocorre porque Swift 1+ a acreditar nesta declaração acabou, 2 é o próximo comunicado.
Só desta forma não vai escrever de erro:
let a = 1 + 2; // 编码规范推荐使用这种写法 let b = 3+4 // 这样也是OK的
Swift literal
O chamado literal, refere-se a como um número específico, string ou valor booleano que pode ser apontado diretamente para o próprio tipo e valor local para a atribuição de variável. Por exemplo, no seguinte:
42 // 整型字面量 3.14159 // 浮点型字面量 "Hello, world!" // 字符串型字面量 true // 布尔型字面量