Wie konvertiert man von String zu Array?

7

Wenn s = "1 2 3 4 5" , wie könnten wir daraus ein Ganzzahl-Array erhalten? Ich möchte ein 5 Element Array{Int64,1} [1; 2; 3; 4; 5] zurückgeben.

    
Abhijith 19.09.2016, 12:12
quelle

3 Antworten

10

Wie @isebarn verwendet, ist split(s) nützlich, um eine Zeichenfolge in Wörter aufzuteilen (standardmäßig auf Leerzeichen aufteilen):

%Vor%

Jetzt können Sie ein Array-Verständnis verwenden:

%Vor%

Hier analysiert parse(Int, ss) eine Zeichenkette ss in eine Ganzzahl.

Beachten Sie auch, dass dies einen eindimensionalen Vektor und kein zweidimensionales Array zurückgibt. Es gibt keinen Grund, hier ein zweidimensionales Array vorzuziehen - das ist ein natürlich eindimensionales Objekt.

    
David P. Sanders 19.09.2016, 12:21
quelle
8

Wenn Sie Version 0.5 oder höher verwenden, können Sie dies auch tun:

%Vor%

Der nachgestellte Punkt ist die neue kompakte Broadcast-Notation. Möglicherweise wird dies in zukünftigen Versionen die bevorzugte Syntax sein.

    
DNF 19.09.2016 17:43
quelle
5
%Vor%

Bearbeiten

oder als @David P. Sanders schlägt vor, dem ich zustimme

%Vor%

Ich habe den Int-Teil weggelassen, da ich nicht weiß, ob Sie nur ganze Zahlen in Ihrer Zeichenfolge haben wollen

    
isebarn 19.09.2016 12:18
quelle

Tags und Links