Como concatenar string no Swift?
Em Objective-C
nós gostamos
NSString *string = @"Swift";
NSString *resultStr = [string stringByAppendingString:@" is a new Programming Language"];
ou
NSString *resultStr=[NSString stringWithFormat:@"%@ is a new Programming Language",string];
Mas eu quero fazer isso na linguagem Swift.
string
swift
concat
string-concatenation
Rajneesh071
fonte
fonte
Respostas:
Você pode concatenar cadeias de várias maneiras:
Você também pode fazer:
Tenho certeza de que existem outras maneiras também.
Bit de descrição
let
cria uma constante. (mais ou menos como umNSString
). Você não pode alterar seu valor depois de defini-lo. Você ainda pode adicioná-lo a outras coisas e criar novas variáveis.var
cria uma variável (mais ou menos comoNSMutableString
) para que você possa alterar o valor. Mas isso foi respondido várias vezes no Stack Overflow (veja a diferença entre let e var ).Nota
Na realidade
let
evar
são muito diferentes deNSString
eNSMutableString
mas ajuda a analogia.fonte
let
cria uma constante. (mais ou menos como um NSString). Você não pode alterar seu valor depois de defini-lo. Você ainda pode adicioná-lo a outras coisas e criar novas variáveis.var
crie uma variável (como NSMutableString), para que você possa alterar o valor dele. Mas isso foi respondido várias vezes no SO. Procuradifference between let and var
Você pode adicionar uma string das seguintes maneiras:
str += ""
str = str + ""
str = str + str2
str = "" + ""
str = "\(variable)"
str = str + "\(variable)"
Eu acho que nomeei todos eles.
fonte
fonte
Isso também funcionará:
fonte
\ isso está sendo usado para acrescentar uma string a outra.
Você pode tentar isso também: - + palavra-chave.
Experimente este código.
fonte
fonte
Muito simples:
fonte
let ResultString = "\(StringA)\(StringB)"
Agora você pode usar stringByAppendingString no Swift.
fonte
O Xcode não aceitou seqüências de caracteres opcionais adicionadas com uma sequência normal. Eu escrevi estas extensões para resolver esse problema:
Então você pode chamar assim:
No entanto, agora você também pode fazer algo assim:
fonte
É chamado como Interpolação de String. É uma maneira de criar novas strings com CONSTANTES, VARIÁVEIS, LITERAIS e EXPRESSÕES. por exemplo:
Além disso
também significa concatenar valores de string.
Espero que isso ajude você.
fonte
Para imprimir a sequência combinada usando
ou String3 armazena a saída da combinação de 2 strings
fonte
Pode-se também usar stringByAppendingFormat no Swift.
fonte
Swift 4.2
Você também pode usar uma extensão:
Usar:
Resultado:
fonte
De: Matt Neuburg Livro "iOS 13 Fundamentos de programação com Swift". :
Para combinar (concatenar) duas cadeias, a abordagem mais simples é usar o operador + :
Essa notação conveniente é possível porque o operador + está sobrecarregado: faz uma coisa quando os operandos são números (adição numérica) e outra quando os operandos são strings (concatenação). O operador + vem com um atalho de atribuição + = ; naturalmente, a variável no lado esquerdo deve ter sido declarada com var:
Como alternativa a + = , você pode chamar o método de instância append (_ :) :
Outra maneira de concatenar strings é com o método join (separator :) . Você começa com uma matriz de seqüências de caracteres a serem concatenadas e entrega a sequência a ser inserida entre todas elas:
fonte
Você pode usar o SwiftString ( https://github.com/amayne/SwiftString ) para fazer isso.
AVISO LEGAL: Eu escrevi esta extensão
fonte
Acabei de mudar de Objective-C para Swift (4) e acho que frequentemente uso:
fonte
No Swift 5, a Apple introduz Raw Strings usando # símbolos.
Exemplo:
o símbolo # é necessário após \. Um \ (nome) regular será interpretado como caracteres na sequência.
fonte
Swift 5
Você pode conseguir isso usando a
appending
API. Isso retorna uma nova string criada anexando uma determinada string ao receptor.Detalhes da API: aqui
Use :
Resultado :
fonte