Avatar ·

Formatação de strings em Swift: como criar uma string com substituição de valores (análogo a String(format:))

Olá a todos! Comecei a estudar Swift recentemente e estou escrevendo meu primeiro aplicativo para iOS 8. Encontrei um problema com formatação de strings. Preciso exibir na tela informações sobre o usuário: nome, idade e saldo da conta. Por exemplo: «Usuário: Ivan, idade: 25 anos, saldo: 1234.56 руб.». Antes, em Objective-C, eu usava `[NSString stringWithFormat:@"...", ...]`, mas em Swift isso aparentemente funciona de forma diferente. Tentei várias opções, mas nenhuma dá o resultado desejado: 1. Interpolação simples: `"Usuário: \(name), idade: \(age) anos, saldo: \(balance) руб."` — aqui não consigo controlar o formato do número (por exemplo, exibir apenas duas casas decimais para o saldo). 2. Tentei usar `String(format:)` assim: ```swift let name = "Ivan" let age = 25 let balance = 1234.5678 let formattedString = String(format: "Usuário: %@, idade: %d anos, saldo: %.2f руб.", name, age, balance) ``` Mas o Xcode mostra um erro: `'String' não é convertível para 'NSString'`