如何在Swift连接字符串?

在Objective-C中

NSString *string = @"Swift";
NSString *resultStr = [string stringByAppendingString:@" is a new Programming Language"];

or

NSString *resultStr=[NSString stringWithFormat:@"%@ is a new Programming Language",string];

但我想用swift语言来写。


当前回答

非常简单:

let StringA = "Hello"
let StringB = "World"
let ResultString = "\(StringA)\(StringB)"
println("Concatenated result = \(ResultString)")

其他回答

非常简单:

let StringA = "Hello"
let StringB = "World"
let ResultString = "\(StringA)\(StringB)"
println("Concatenated result = \(ResultString)")

你可以用多种方式连接字符串:

let a = "Hello"
let b = "World"

let first = a + ", " + b
let second = "\(a), \(b)"

你还可以:

var c = "Hello"
c += ", World"

我相信还有更多的方法。

稍微描述一下

创建一个常数。(有点像NSString)。一旦你设置了它,你就不能改变它的值。你仍然可以把它添加到其他东西,并创建新的变量。

Var创建一个变量。(有点像NSMutableString)所以你可以改变它的值。但是这个问题在Stack Overflow上已经被回答了几次(参见let和var之间的区别)。

Note

实际上,let和var与NSString和NSMutableString非常不同,但它有助于类比。

串联是指Swift中字符串的组合。字符串可能包含文本,整数,甚至表情符号!字符串连接有很多方法。让我列举一些:

相同的字符串

使用+ =

如果我们想要添加到一个已经存在的String,这是很有用的。为此,我们的String应该是可变的或可以修改的,因此将其声明为变量。例如:

var myClassmates = "John, Jane"
myClassmates += ", Mark" // add a new Classmate
// Result: "John, Jane, Mark"

不同的字符串

如果我们想把不同的字符串组合在一起,例如:

let oldClassmates = "John, Jane" 
let newClassmate = "Mark"

我们可以使用以下任何一种:

1)使用+

let myClassmates = oldClassmates + ", " + newClassmate
// Result: "John, Jane, Mark"

注意,每个字符串可以是一个变量或常量。如果你只改变一次值,就把它声明为常量。

2)字符串插值

let myClassmates = "\(oldClassmates), \(newClassmate)"
// Result: "John, Jane, Mark"

3)添加

let myClassmates = oldClassmates.appending(newClassmate)
// Result: "John, Jane, Mark"

更多信息请参考Swift Book中的字符串和字符。

更新:在Swift 5.1上测试

let the_string = "Swift"
let resultString = "\(the_string) is a new Programming Language"

\ this被用来将一个字符串附加到另一个字符串。

var first = "Hi" 
var combineStr = "\(first) Start develop app for swift"

你也可以试试这个:- +关键字。

 var first = "Hi" 
 var combineStr = "+(first) Start develop app for swift"

试试这段代码。