string - initialize - switch en swift 3
Concatenar nĂºmero con cadena en Swift (6)
Aquí hay documentación sobre cuerdas y personajes.
var variableString = "Horse"
variableString += " and carriage"
// variableString is now "Horse and carriage"
Necesito concatenar cadenas como a continuación ( myVariable
es una variable int);
return "first"+myVariable
Pero no compila, ¿cuál es la forma correcta de hacer esto?
Si está haciendo mucho, considere un operador para hacerlo más legible:
func concat<T1, T2>(a: T1, b: T2) -> String {
return "/(a)" + "/(b)"
}
let c = concat("Horse ", "cart") // "Horse cart"
let d = concat("Horse ", 17) // "Horse 17"
let e = concat(19.2345, " horses") // "19.2345 horses"
let f = concat([1, 2, 4], " horses") // "[1, 2, 4] horses"
operator infix +++ {}
@infix func +++ <T1, T2>(a: T1, b: T2) -> String {
return concat(a, b)
}
let c1 = "Horse " +++ "cart"
let d1 = "Horse " +++ 17
let e1 = 19.2345 +++ " horses"
let f1 = [1, 2, 4] +++ " horses"
Por supuesto, puede usar cualquier operador de infijo válido, no solo +++
.
Si quiere poner un número dentro de una cadena, puede usar String Interpolation :
return "first /(myVariable)"
T0 agrega un int a una cadena que puedes hacer:
return "first /(myVariable)"
Tienes DOS opciones;
return "first " + String(myVariable)
o
return "first /(myVariable)"
Optional
palabra clave Optional
aparecerá cuando haya marcado la variable como opcional con !
durante la declaración.
Para evitar la palabra clave opcional en el resultado de impresión, tiene dos opciones:
- Marque la variable opcional como no opcional. Para esto, tendrá que dar un valor predeterminado.
- Utilice el símbolo de desempaquetar fuerza
(!)
, Junto a la variable
En tu caso, esto funcionaría bien
return "first /(myVariable!)"