Ich frage mich, wie man ein NSArray [@"Apple", @"Pear ", 323, @"Orange"]
in Objective-C in einen String konvertiert .
objective-c
arrays
nsstring
nsarray
alexyorke
quelle
quelle
Antworten:
quelle
[array description]
Zeilenumbrüche und äußere Klammern eingefügt werden.NSString * myString = [array componentsJoinedByString:@""];
ein akzeptabler Ersatz dafür?<ClassName: InstanceAddress>
. DasvalueForKey
macht es die angegebene Eigenschaft für jedes Element abzurufen. In diesem Falldescription
handelt es sich um eineNSString *
Eigenschaft vonNSObject
, deren Getter durch ihre Unterklassen überschrieben werden kann.Ein Ansatz wäre, über das Array zu iterieren und die
description
Nachricht für jedes Element aufzurufen :Ein anderer Ansatz wäre, etwas basierend auf der Klasse jedes Elements zu tun:
Wenn Sie Kommas und andere irrelevante Informationen wünschen, können Sie einfach Folgendes tun:
quelle
-description
) und sie anschließend-componentsJoinedByString:
mit@""
als Parameter zu verknüpfen .Ich denke, Sanjays Antwort war fast da, aber ich habe sie so benutzt
Ausgabe :
Als Sanjay angedeutet hatte - habe ich Methode componentsJoinedByString von NSArray , das tut Füge- und gibt Ihnen zurück NSString
BTW NSString verfügt über Komponenten der umgekehrten MethodeSeparatedByString , die die Aufteilung übernimmt und Ihnen NSArray zurückgibt.
quelle
Ich habe kürzlich ein wirklich gutes Tutorial zu Objective-C-Strings gefunden:
http://ios-blog.co.uk/tutorials/objective-c-strings-a-guide-for-beginners/
Und ich dachte, dass dies von Interesse sein könnte:
Wenn Sie die Zeichenfolge in ein Array aufteilen möchten, verwenden Sie eine Methode namens componentsSeparatedByString, um dies zu erreichen:
Wenn Sie mehrere verschiedene Zeichen aufteilen müssen, verwenden Sie die Komponenten von NSString. SeparatedByCharactersInSet:
Beachten Sie jedoch, dass die Trennzeichenfolge nicht leer sein darf. Wenn Sie eine Zeichenfolge in ihre einzelnen Zeichen trennen müssen, durchlaufen Sie einfach die Länge der Zeichenfolge und konvertieren Sie jedes Zeichen in eine neue Zeichenfolge:
quelle
und Sie haben dic oder mehrere Array dann unten verwendet
quelle
Die erste Zeile initialisiert ein Array mit Objekten. Die zweite Zeile verbindet alle Elemente dieses Arrays durch Hinzufügen der Zeichenfolge innerhalb des "" und gibt eine Zeichenfolge zurück.
quelle
Ziel C Lösung
Wer nach einer Lösung sucht in
Swift
Wenn das Array Zeichenfolgen enthält, können Sie die Verknüpfungsmethode der Zeichenfolge verwenden:
In Swift 2:
In Swift 3 & 4
quelle
Die Art, wie ich weiß, ist einfach.
n
ist die innere Position im Array Dies in SWIFT-Sprache. Es könnte in Ziel C funktionierenquelle
Swift 3.0-Lösung:
quelle