English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
在本文中,您将学习在Swift中显示输出和获取输入的不同方法。
您可以简单地使用print(items: Any..., separator: String = default, terminator: String = default)函数将输出发送到标准输出(屏幕)。请参考文章了解Swift中的函数.
函数print(items, separator, terminator:)接受三个参数。
items: 要在控制台中打印的项目。它可以接受多个项目。
separator: 每个项目之间要打印的字符串。默认为单个空格(" ")。
terminator: 在打印所有项目之后要打印的字符串。默认值为换行符("\n")。
由于最后两个参数(separator, terminator)已指定默认值,所以在调用print函数时不必强制使用它们。
print("Olá, Mundo!") print("Eu amo Swift.")
Quando você executar o programa, a saída será:
Olá, Mundo! Eu amo Swift.
No programa acima, print("Olá, Mundo!") imprime o texto de stringOlá,Mundo!。no console.
Você pode ver na impressão"Eu amo Swift."ao mesmo tempo, ele também altera a linha (adiciona caractere de nova linha).Porque o parâmetro terminator do método print tem valor padrão \n (nova linha).
Portanto, a instrução print("Eu amo Swift.") imprime a mensagem na nova linha.
var helloMsg = "Hello, World!" print(helloMsg) print(123.45)
Quando você executar o programa, a saída será:
Olá, Mundo! 123.45
Você pode imprimir o valor de uma variável ou constante diretamente adicionando o nome da variável ou constante na função de impressão. No programa acima, print(helloMsg) imprime o valor da variável helloMsgOlá,Mundo!.
Você também pode inserir literais em uma instrução print, como na expressão print(123.45) que usa123.45Literais de ponto flutuante sem aspas, e imprime-se.
Se você quiser imprimir a saída e não tiver caractere de nova linha, precisará emprintPassa-se uma string vazia como parâmetro do terminator, conforme mostrado a seguir:
print("Olá, Mundo!", terminator: "") print("Eu amo Swift.") print("Eu também amo Taylor Swift.")
Quando você executar o programa, a saída será:
Olá, Mundo! Eu amo Swift. Eu também amo Taylor Swift.
No programa acima, o terminator é a string impressa após a impressão de todos os itens.
Passamos uma string vazia como sufixo (o padrão é o caractere de nova linha \n). Portanto, ao imprimir a primeira instrução, não é adicionada uma nova linha e a instrução print("Eu amo Swift.") é mostrada na mesma linha.
Devido ao caractere de nova linha adicionado pela função print("Eu amo Swift."), a instrução print("Eu também amo Taylor Swift") é outputada em uma nova linha.
Você ainda pode imprimir vários itens em uma instrução de impressão e adicionar separadores entre esses itens:
print("Olá, Mundo!", 2020, "Vamos nos ver em breve", separator: ". ")
Quando você executar o programa, a saída será:
Olá, Mundo!. 2020. Vamos nos ver em breve
No programa acima, adicionamos diferentes tipos de dados ao comando de print e os separamos por vírgula.
Os itens a serem impressos são strings Hello, World!. 2020. See you soon.
Também passamos um delimitador de "." como parâmetro. Isso inserirá um delimitador (.) entre cada item. Dessa forma, você pode ver o resultado da saída, separado por pontos, seguido de um espaço.
Se você quiser output de múltiplas linhas em uma única linha de print, você pode usar a sequência de escape \r no comando de print, conforme mostrado a seguir:
print("Hello, \rWorld!")
Quando você executar o programa, a saída será:
Hello, World!
No Swift, há um método melhor para output de mensagens em uma única linha de print. Você deve usar strings literais de múltiplas linhas. Isso é feito adicionando caracteres a strings literais de múltiplas linhas usando três aspas.
print(""" Hello, World! ""
Quando você executar o programa, a saída será:
Hello, World!
Você também pode adicionar o valor de uma variável ou constante a uma string literal usando interpolação de strings, ou seja, encapsular a variável entre parênteses e prefixar com um backslash (\).
var helloMsg = "Hello, World!" print("I have a message \(helloMsg)")
Quando você executar o programa, a saída será:
I have a message Hello, World!
A expressão print("I have a message \(helloMsg)") insere o valor da variável helloMsg entre aspas literais \(helloMsg) para encapsular o valor da variável. Portanto, a saída é“I have a message Hello, World!” parana tela.
Para obter entrada do usuário em Swift, você deve fazer isso sem usar o framework UIKit no Xcode Playground.
Mas, usando o framework Swift, você pode criar um aplicativo de linha de comando no Xcode para obter entrada do usuário.
Este é o código que você pode usar para obter entrada do usuário.
print("Insira a sua linguagem de programação favorita", terminator: ".") let name = readLine() print("Qual é a sua linguagem de programação favorita? \(name!)")
Quando você executar o programa, a saída será:
Insira a sua linguagem de programação favorita. Swift Qual é a sua linguagem de programação favorita? Swift.
No programa acima, a função de impressão imprime a saídaInsira o idioma de programação que você gosta.Na área de depuração. A sentença let name = readLine() espera que o usuário insira algo na área de depuração.
Se você digitar “Swift” e pressionar Enter, a função readLine atribuirá a string ao constante name e mostrá-la-á Seu idioma de programação favorito é Swift.
Como a função readLine retorna uma string opcional, assim como na declaração name! na sentença print("Your favorite programming language is \(name!)"), nós desempacotamos forçadamente a constante.
Como a função readLine retorna uma string opcional, na sentença print(“Seu idioma de programação favorito é\(name!)”), nós forçamos a desempacotar a constante name!
Você encontrará no artigoNo Swift OptionalsSaiba mais sobre opcionais.