Добавить строку в Swift
Я новичок в iOS. В настоящее время я изучаю iOS, используя Objective-C и Swift.
Чтобы добавить строку в Objective-C, я использую следующий код:
NSString *string1 = @"This is";
NSString *string2 = @"Swift Language";
NSString *appendString=[NSString stringWithFormat:@"%@ %@",string1,string2];
NSLog(@"APPEND STRING:%@",appendString);
Кто-нибудь, пожалуйста, ведите меня.
12 ответов
Это очень просто:
Для ObjC:
NSString *string1 = @"This is";
NSString *string2 = @"Swift Language";
ForSwift:
let string1 = "This is"
let string2 = "Swift Language"
Для ObjC AppendString:
NSString *appendString=[NSString stringWithFormat:@"%@ %@",string1,string2];
Для Swift AppendString:
var appendString1 = "\(string1) \(string2)"
var appendString2 = string1+string2
Результат:
print("APPEND STRING 1:\(appendString1)")
print("APPEND STRING 2:\(appendString2)")
Полный код в Swift:
let string1 = "This is"
let string2 = "Swift Language"
var appendString = "\(string1) \(string2)"
var appendString1 = string1+string2
print("APPEND STRING1:\(appendString1)")
print("APPEND STRING2:\(appendString2)")
В Swift добавлять строки так же просто, как:
let stringA = "this is a string"
let stringB = "this is also a string"
let stringC = stringA + stringB
Или вы можете использовать интерполяцию строк.
let stringC = "\(stringA) \(stringB)"
Обратите внимание, что теперь между ними будет пробел.
Примечание: я вижу, что другие ответы используют var
много. Строки не меняются и поэтому должны быть объявлены с использованием let
, Я знаю, что это небольшое упражнение, но полезно привыкнуть к лучшим практикам. Тем более, что это большая особенность Swift.
Добавьте это расширение куда-нибудь:
extension String {
mutating func addString(str: String) {
self = self + str
}
}
Тогда вы можете назвать это как:
var str1 = "hi"
var str2 = " my name is"
str1.addString(str2)
println(str1) //hi my name is
Множество хороших расширений Swift, таких как это, находятся в моем репозитории, посмотрите их: https://github.com/goktugyil/EZSwiftExtensions
let string2 = " there"
var instruction = "look over"
Выбор 1:
instruction += string2;
println(instruction)
выбор 2:
var Str = instruction + string2;
println(Str)
Ref это
Вы можете просто добавить строку как:
var worldArg = "world is good"
worldArg += " to live";
var string1 = "This is ";
var string2 = "Swift Language";
var appendString = string1 + string2;
println("APPEND STRING: \(appendString)");
Согласно Документации Swift 4, строковые значения могут быть добавлены (или объединены) с помощью оператора сложения (+) для создания нового строкового значения:
let string1 = "hello"
let string2 = " there"
var welcome = string1 + string2
// welcome now equals "hello there"
Вы также можете добавить значение String к существующей переменной String с помощью оператора присваивания (+=):
var instruction = "look over"
instruction += string2
// instruction now equals "look over there"
Вы можете добавить значение Character к переменной String с помощью метода append () типа String:
let exclamationMark: Character = "!"
welcome.append(exclamationMark)
// welcome now equals "hello there!"
> Swift2.x:
String("hello ").stringByAppendingString("world") // hello world
Строки объединяются на языке Swift.
let string1 = "one"
let string2 = "два"
var concate = "(string1) (string2)"
выход playgroud "один два"
SWIFT 2.x
let extendedURLString = urlString.stringByAppendingString("&requireslogin=true")
SWIFT 3.0
Из документации:"Вы можете добавить значение Character в переменную String с помощью метода append() типа String:" поэтому мы не можем использовать append для строк.
urlString += "&requireslogin=true"
Оператор "+" работает в обеих версиях
let extendedURLString = urlString+"&requireslogin=true"
В принятом ответе PREMKUMAR есть пара ошибок в его полном коде в ответе Swift. Первая печать должна читать (appendString), а вторая печать должна читать (appendString1). Кроме того, обновленный println устарел в Swift 2.0
Его
let string1 = "This is"
let string2 = "Swift Language"
var appendString = "\(string1) \(string2)"
var appendString1 = string1+string2
println("APPEND STRING1:\(appendString1)")
println("APPEND STRING2:\(appendString2)")
Исправленный
let string1 = "This is"
let string2 = "Swift Language"
var appendString = "\(string1) \(string2)"
var appendString1 = string1+string2
print("APPEND STRING:\(appendString)")
print("APPEND STRING1:\(appendString1)")
let firstname = "paresh"
let lastname = "hirpara"
let itsme = "\(firstname) \(lastname)"