En Swift, para ler datos do teclado nunha aplicación de consola, utilízase a función readLine()
. Esta función devolve unha cadea opcional (String?
), polo que é boa práctica desempaquetar o valor antes de usalo.
Command Line Tool #
En Xcode, readLine()
só funciona en proxectos de tipo “Command Line Tool” ou proxectos de consola. Se estás traballando nun playground ou nunha aplicación gráfica (como unha app de iOS ou macOS), readLine() non funcionará porque estas aplicacións non están deseñadas para interactuar coa consola.
Se queres probar readLine() en Xcode, asegúrate de que cumpras os seguintes pasos:
- Crear un proxecto de consola
- Abre Xcode.
- Selecciona File > New > Project.
- Elixe a plantilla Command Line Tool dentro das aplicacións para macOS.
- Crea o proxecto e abre o ficheiro main.swift.
Agora xa o podes probar con este exemplo básico:
print("Introduce o teu nome:")
if let nome = readLine() {
print("Ola, \(nome)!")
} else {
print("Non se puido ler o nome.")
}
Cando executes o programa (⇧ + ⌘ + R), abrirase un terminal na consola de Xcode onde podes introducir o texto (na imaxe superior, o terminal é o número 2).
Exemplo: Ler un número #
Se queres ler un número, podes converter o valor lido a un tipo numérico como Int ou Double:
print("Introduce a túa idade:")
if let idadeString = readLine(), let idade = Int(idadeString) {
print("Tes \(idade) anos.")
} else {
print("Non introduciches un número válido.")
}
Notas #
Notas:
- A función readLine() detense ata que o usuario preme a tecla Enter.
- Sempre é boa idea validar os datos introducidos polo usuario para evitar erros.
- Se esperas múltiples entradas, podes usar bucles para continuar lendo datos ata que sexa necesario.