838 Stimmen

Holen Sie sich die Länge eines Strings

Wie erhält man die Länge eines String? Zum Beispiel habe ich eine variable definiert wie:

var test1: String = "Scott"

Ich kann jedoch keine Längenmethode für den String finden.

2voto

Jesse Punkte 21

Gerade jetzt (in Swift 2.3), wenn Sie verwenden:

myString.characters.count 

die Methode wird einen "Distance" Typ zurückgeben, wenn Sie möchten, dass die Methode einen Integer zurückgibt, sollten Sie wie folgt type casten:

var count = myString.characters.count as Int

2voto

ingconti Punkte 9854

Meine zwei Cent für Swift 3/4

Wenn Sie bedingt kompilieren müssen

    #if swift(>=4.0)
            let len = text.count
        #else
            let len = text.characters.count
        #endif

2voto

Frank Punkte 6637

Apple hat es anders gemacht als andere wichtige Sprachen. Der aktuelle Weg ist, zu sagen:

test1.characters.count

Jedoch, sei vorsichtig, wenn du Länge sagst, meinst du die Anzahl der Zeichen und nicht die Anzahl der Bytes, denn diese können unterschiedlich sein, wenn du nicht-ascii Zeichen verwendest.

Zum Beispiel; "hi".characters.count wird dir 5 geben, aber das ist nicht die Anzahl der Bytes. Um die echte Anzahl der Bytes zu erhalten, musst du "hi".lengthOfBytes(using: String.Encoding.utf8) verwenden. Dies wird dir 11 geben.

2voto

Andy Lebowitz Punkte 1471
test1.characters.count

gibt Ihnen die Anzahl der Buchstaben/Zahlen usw. in Ihrem String zurück.

bsp:

test1 = "StackOverflow"

print(test1.characters.count)

(druckt "13")

2voto

Tien Dinh Punkte 989

String und NSString sind eine "toll free bridge", daher können alle Methoden, die für NSString verfügbar sind, mit Swift String verwendet werden.

let x = "test" as NSString
let y: NSString = "string 2"
let lenx = x.count
let leny = y.count

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X