Literales Swift

Un literal se refiere a un valor como un número específico, una cadena o un valor booleano, que puede indicar directamente su propio tipo y asignarse a una variable. Por ejemplo, a continuación:

let aNumber = 3         //整型字面量
let aString = "Hello"   //字符串字面量
let aBool = true        //布尔值字面量

Literales de enteros

Los literales de enteros pueden ser constantes decimales, binarias, octales o hexadecimales. El prefijo binario es 0b, el prefijo octal es 0o, el prefijo hexadecimal es 0x, y el decimal no tiene prefijo:

A continuación se muestran algunos ejemplos de literales de enteros:

let decimalInteger = 17           // 17 - 十进制表示
let binaryInteger = 0b10001       // 17 - 二进制表示
let octalInteger = 0o21           // 17 - 八进制表示
let hexadecimalInteger = 0x11     // 17 - 十六进制表示

Literales de punto flotante

Los literales de punto flotante tienen una parte entera, un punto decimal, una parte fraccionaria y una parte exponencial.

A menos que se especifique lo contrario, el tipo inferido por defecto de los literales de punto flotante es Double, un tipo de la biblioteca estándar de Swift, que representa números de punto flotante de 64 bits.

Los literales de punto flotante se representan por defecto en decimal (sin prefijo), y también pueden representarse en hexadecimal (con prefijo 0x).

Los literales de punto flotante decimales consisten en una cadena de dígitos decimales seguida de una parte fraccionaria o una parte exponencial (o ambas). La parte fraccionaria decimal consta de un punto decimal . seguido de una cadena de dígitos decimales. La parte exponencial consta de la letra e mayúscula o minúscula como prefijo, seguida de una cadena de dígitos decimales; esta cadena de dígitos indica la cantidad anterior a e multiplicada por 10 elevado a la potencia indicada. Por ejemplo: 1.25e2 representa 1.25 ⨉ 10^2, es decir, 125.0; de manera similar, 1.25e-2 representa 1.25 ⨉ 10^-2, es decir, 0.0125.

Los literales de punto flotante hexadecimales constan del prefijo 0x seguido de una parte fraccionaria hexadecimal opcional y una parte exponencial hexadecimal. La parte fraccionaria hexadecimal consta de un punto decimal seguido de una cadena de dígitos hexadecimales. La parte exponencial consta de la letra p mayúscula o minúscula como prefijo, seguida de una cadena de dígitos decimales; esta cadena indica la cantidad anterior a p multiplicada por 2 elevado a la potencia indicada. Por ejemplo: 0xFp2 representa 15 ⨉ 2^2, es decir, 60; de manera similar, 0xFp-2 representa 15 ⨉ 2^-2, es decir, 3.75.

Los literales de punto flotante negativos se componen del operador unario menos - y un literal de punto flotante, por ejemplo -42.5.

Los literales de punto flotante permiten usar el guion bajo _ para mejorar la legibilidad de los números; el sistema ignora los guiones bajos, por lo que no afectan el valor del literal. Del mismo modo, se puede añadir 0 delante del número sin que afecte al valor del literal.

A continuación se muestran algunos ejemplos de literales de punto flotante:

let decimalDouble = 12.1875       //十进制浮点型字面量
let exponentDouble = 1.21875e1    //十进制浮点型字面量
let hexadecimalDouble = 0xC.3p0   //十六进制浮点型字面量

Literales de cadena

Los literales de cadena consisten en una secuencia de caracteres entre comillas dobles, con la siguiente forma:

"characters"

Los literales de cadena no pueden contener comillas dobles sin escapar ("), barras invertidas sin escapar (\), retornos de carro o saltos de línea.

Carácter de escape Significado
\0 Carácter nulo
\\ Barra invertida \
\b Retroceso (BS), mueve la posición actual a la columna anterior
\f Avance de página (FF), mueve la posición actual al inicio de la página siguiente
\n Salto de línea
\r Retorno de carro
\t Tabulación horizontal
\v Tabulación vertical
\' Comilla simple
\" Comilla doble
\000 Cualquier carácter representado por 1 a 3 dígitos octales
\xhh... Cualquier carácter representado por 1 a 2 dígitos hexadecimales

A continuación se muestran ejemplos sencillos de literales de cadena:

import Cocoa

let stringL = "Hello\tWorld\n\nEjemplo官网:\'http://www.example.com\'"
print(stringL)

El resultado de ejecutar el programa anterior es:

Hello    World

Ejemplo官网:'http://www.example.com'

Literales booleanos

El tipo predeterminado de los literales booleanos es Bool.

Los literales booleanos tienen tres valores, que son palabras clave reservadas de Swift:

  • trueRepresenta verdadero.

  • falseRepresenta falso.

  • nilRepresenta ningún valor.

Otras extensiones