English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Entrada y salida en Swift

在本文中,您将学习在Swift中显示输出和获取输入的不同方法。

Swift 基本输出

您可以简单地使用print(items: Any..., separator: String = default, terminator: String = default)函数将输出发送到标准输出(屏幕)。请参考文章了解Swift中的函数.

函数print(items, separator, terminator:)接受三个参数。

  • items: 要在控制台中打印的项目。它可以接受多个项目。

  • separator: 每个项目之间要打印的字符串。默认为单个空格(" ")。

  • terminator: 在打印所有项目之后要打印的字符串。默认值为换行符("\n")。

由于最后两个参数(separator, terminator)已指定默认值,所以在调用print函数时不必强制使用它们。

Ejemplo1:使用简单的print()函数打印到屏幕

print("¡Hola, Mundo!")
print("Me encanta Swift.")

Al ejecutar este programa, la salida será:

¡Hola, Mundo!
Me encanta Swift.

En el programa anterior, print("¡Hola, Mundo!") imprime el texto de cadena¡Hola,Mundo!。en la consola.

Puedes ver en la impresión"Me encanta Swift."Además, también cambiará la línea (agregando un salto de línea).Debido a que el parámetro terminator del método print tiene un valor predeterminado \n (salto de línea).

Por lo tanto, la instrucción print("Me encanta Swift.") imprime el mensaje en una nueva línea.

Ejemplo2:打印常量,变量和字面量

var helloMsg = "Hello, World!"
print(helloMsg)
print(123.45)

Al ejecutar este programa, la salida será:

¡Hola, Mundo!
123.45

Puedes imprimir el valor de una variable o constante directamente agregando el nombre de la variable o constante en la función de impresión. En el programa anterior, print(helloMsg) imprime el valor de la variable helloMsg¡Hola,Mundo!.

También puedes insertar literals en una instrucción de impresión. En la instrucción print(123.45) que toma123.45Imprimir literals de coma flotante sin comillas, y luego imprimir.

Ejemplo3:使用终止符参数进行打印而没有链接中断

Si deseas imprimir la salida y no hay saltos de línea,则需要 enprintSe pasa una cadena vacía como parámetro de terminator, como se muestra a continuación:

print("¡Hola, Mundo!", terminator: "")
print("Me encanta Swift.")
print("También me encanta Taylor Swift.")

Al ejecutar este programa, la salida será:

¡Hola, Mundo! Me encanta Swift.
También me encanta Taylor Swift.

En el programa anterior, terminator es la cadena que se imprime después de que se hayan impreso todos los elementos.

Pasamos una cadena vacía como separador (por defecto, el salto de línea \n). Por lo tanto, al imprimir la primera instrucción no se agrega una nueva línea y la instrucción print("Me encanta Swift.") se muestra en la misma línea.

Debido a que la función print("Me encanta Swift.") agrega un salto de línea, la instrucción print("También me encanta Taylor Swift") se muestra en una nueva línea.

Ejemplo4:使用单个打印函数打印多个项目

También puedes imprimir varios elementos en una instrucción de impresión y agregar un separador entre ellos:

print("¡Hola, Mundo!", 2020, "Pronto nos vemos", separator: ". ")

Al ejecutar este programa, la salida será:

¡Hola, Mundo!. 2020. Pronto nos vemos

En el programa anterior, agregamos diferentes tipos de datos en la sentencia de impresión y los separamos con comas.

Los elementos que se van a imprimir son cadenas Hello, World!. 2020. ¡Vuelvo pronto!.

También pasamos el separador "." como parámetro. Esto insertará el separador (.) entre cada proyecto. De esta manera, puede ver los resultados de la salida, separados por puntos (.) y seguidos de un espacio.

Ejemplo5: Imprimir múltiples líneas

Si desea imprimir múltiples líneas utilizando una sola sentencia print, puede usar la secuencia de escape \r en la sentencia de impresión, como se muestra a continuación:

print("Hello, \rWorld!")

Al ejecutar este programa, la salida será:

Hello, 
World!

Ejemplo6: Imprimir múltiples líneas utilizando comillas dobles

En Swift, hay un método mejor para imprimir múltiples líneas de mensaje en una sola sentencia print. Debe usar literals de cadena multilínea. Esto se hace agregando caracteres a literals de cadena multilínea usando comillas dobles

print("""
Hello,
World!
""

Al ejecutar este programa, la salida será:

Hello,
World!

Ejemplo7: Imprimir variables utilizando interpolación de cadenas

También puede agregar valores de variables o constantes a cadenas literales utilizando interpolación de cadenas, es decir, encapsular la variable entre paréntesis y prefijarla con una barra invertida (\).

var helloMsg = "Hello, World!"
print("I have a message \(helloMsg)")

Al ejecutar este programa, la salida será:

I have a message Hello, World!

La sentencia print("I have a message \(helloMsg)") inserta el valor de la variable helloMsg encapsulándolo en la literal de cadena \(helloMsg). Por lo tanto, la salida esDe "I have a message Hello, World!" aen la pantalla.

Entrada básica de Swift

Si desea obtener la entrada del usuario en Swift, debe hacerlo sin usar el framework UIKit en el Xcode Playground.

Pero, utilizando el framework Swift, puede crear una aplicación de línea de comandos en Xcode para obtener la entrada del usuario.

Este es el código que puede usar para obtener la entrada del usuario.

Ejemplo8: Obtener la entrada del usuario utilizando readLine()

print("Ingrese su lenguaje de programación favorito.", terminator: ".")
let name = readLine()
print("¿Cuál es su lenguaje de programación favorito? \(name!)"}

Al ejecutar este programa, la salida será:

Ingrese su lenguaje de programación favorito.
Swift
¿Cuál es su lenguaje de programación favorito? Swift.

En el programa anterior, se imprime la salida de la función.Ingresa tu lenguaje de programación favorito.En el área de depuración. La instrucción let name = readLine() espera que el usuario ingrese algo en el área de depuración.

Si escribes “Swift” y presionas Enter, la función readLine asignará la cadena a la constante name y la mostrará como Tu lenguaje de programación favorito es Swift.

Dado que la función readLine devuelve una cadena opcional, como en la declaración name! nos desempaquetamos forzadamente la constante, print("Tu lenguaje de programación favorito es \(name!)").

Dado que la función readLine devuelve una cadena opcional, en la instrucción print(“Tu lenguaje de programación favorito es \(name!)”) forzamos la desempaquetación de la constante name!

En el artículoEn Swift OptionalsObtenga más información sobre optionals.