在Swift中追加string
我是iOS新手。 我目前正在使用Objective-C和Swift学习iOS。
在Objective-C中附加一个string,我使用下面的代码:
NSString *string1 = @"This is"; NSString *string2 = @"Swift Language"; NSString *appendString=[NSString stringWithFormat:@"%@ %@",string1,string2]; NSLog(@"APPEND STRING:%@",appendString);
任何人都请指导我。
它非常简单:
对于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中,附加string就像下面这样简单:
let stringA = "this is a string" let stringB = "this is also a string" let stringC = stringA + stringB
或者你可以使用string插值。
let stringC = "\(stringA) \(stringB)"
注意,它们之间现在会有空白。
注意:我看到其他答案正在使用var
很多。 string不会改变,因此应该使用let
声明。 我知道这是一个小小的练习,但最好还是养成最佳做法的习惯。 尤其是因为这是Swift的一大特色。
let string2 = " there" var instruction = "look over"
select1:
instruction += string2; println(instruction)
select2:
var Str = instruction + string2; println(Str)
参考这个
你可以简单地追加string,如:
var worldArg = "world is good" worldArg += " to live";
在某处添加这个扩展名:
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
var string1 = "This is "; var string2 = "Swift Language"; var appendString = string1 + string2; println("APPEND STRING: \(appendString)");
> Swift2.x :
String("hello ").stringByAppendingString("world") // hello world
string在Swift语言中连接。
让string1 =“一”
让string2 =“two”
var concate =“(string1)(string2)”
playgroud输出是“一二”
在接受的答案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)")
SWIFT 2.x
let extendedURLString = urlString.stringByAppendingString("&requireslogin=true")
SWIFT 3.0
从文档: “您可以使用stringtypes的append()方法将字符值附加到stringvariables:”所以我们不能使用string附加。
urlString += "&requireslogin=true"
“+”运算符在两个版本中都可以工作
let extendedURLString = urlString+"&requireslogin=true"
let firstname = "paresh" let lastname = "hirpara" let itsme = "\(firstname) \(lastname)"
你正在寻找的答案是string插值
string插值
string插值是一种通过将常量,variables,文字和expression式的值包含在string文字中来构造新的string值的方法。 您可以在单行和多行string文字中使用string插值。 插入到string文字中的每个项目都包含在一对括号中,并以反斜杠()作为前缀:
例:
let multiplier = 3 // this is string interpolation let message = "\(multiplier) times 2.5 is \(Double(multiplier) * 2.5)" print(messsage)