在Swift中追加String

时间:2014-06-12 09:01:34

标签: ios objective-c swift

我是iOS新手。我目前正在使用Objective-C和Swift学习iOS。

要在Objective-C中附加一个字符串,我使用以下代码:

 NSString *string1 = @"This is";
 NSString *string2 = @"Swift Language";
 NSString *appendString=[NSString stringWithFormat:@"%@ %@",string1,string2];
 NSLog(@"APPEND STRING:%@",appendString);

任何人都请指导我。

12 个答案:

答案 0 :(得分:105)

非常简单:

对于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)")

答案 1 :(得分:16)

在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的一大特色。

答案 2 :(得分:7)

let string2 = " there"
var instruction = "look over"

选择1:

 instruction += string2;

  println(instruction)

选择2:

 var Str = instruction + string2;

 println(Str)

ref this

答案 3 :(得分:6)

在某处添加此扩展程序:

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

答案 4 :(得分:5)

你可以简单地追加字符串 像:

var worldArg = "world is good"

worldArg += " to live";

答案 5 :(得分:3)

var string1 = "This is ";
var string2 = "Swift Language";
var appendString = string1 + string2;
println("APPEND STRING: \(appendString)");

答案 6 :(得分:1)

&GT;的 Swift2.x

String("hello ").stringByAppendingString("world") // hello world

答案 7 :(得分:1)

根据Swift 4 Documentation, 字符串值可以与加法运算符(+)一起添加(或连接)以创建新的字符串值:

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"

您可以使用String类型的append()方法将Character值附加到String变量:

let exclamationMark: Character = "!"
welcome.append(exclamationMark)
// welcome now equals "hello there!"

答案 8 :(得分:0)

字符串以Swift语言连接。

让string1 =&#34;一个&#34;

让string2 =&#34;两个&#34;

var concate =&#34; (string1)(string2)&#34;

playgroud输出是&#34;一两个&#34;

答案 9 :(得分:0)

在接受的答案PREMKUMAR中,他在Swift中的完整代码中有一些错误。第一个打印应该读取(appendString),第二个打印应该读取(appendString1)。此外,在Swift 2.0中弃用了更新的println

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)")

答案 10 :(得分:0)

SWIFT 2.x

let extendedURLString = urlString.stringByAppendingString("&requireslogin=true")

SWIFT 3.0

来自文档: &#34;你可以使用String类型的append()方法将一个Character值附加到String变量:&#34; 所以我们不能对字符串使用append。

urlString += "&requireslogin=true"

&#34; +&#34;运算符适用于两个版本

let extendedURLString = urlString+"&requireslogin=true"

答案 11 :(得分:0)

<script src="https://unpkg.com/react@15.1.0/dist/react.js"></script>
<script src="https://unpkg.com/react-dom@15.1.0/dist/react-dom.js"></script>

<div id="root"></div>