Heim > Backend-Entwicklung > Golang > Wie kann ich ein Go-Array in ein Slice konvertieren?

Wie kann ich ein Go-Array in ein Slice konvertieren?

Linda Hamilton
Freigeben: 2024-12-16 22:12:14
Original
545 Leute haben es durchsucht

How Can I Convert a Go Array to a Slice?

Arrays in Slices in Go konvertieren

Beim Arbeiten mit Arrays und Slices in Go kann eine Konvertierung zwischen den beiden Datentypen erforderlich sein . Dies kann nützlich sein, wenn Daten zwischen Funktionen übergeben werden, die unterschiedliche Eingabetypen erwarten.

Angenommen, Sie haben eine Funktion, die ein Array von Bytes zurückgibt:

func Foo() [32]byte { ... }
Nach dem Login kopieren

Möglicherweise müssen Sie dieses Ergebnis übergeben zu einer anderen Funktion, die ein Byte-Segment erwartet:

func Bar(b []byte) { ... }
Nach dem Login kopieren

Wenn Sie einfach versuchen, Bar(d) aufzurufen, wobei d das von Foo zurückgegebene Array ist, erhalten Sie a Typkonvertierungsfehler. Dies liegt daran, dass Arrays und Slices in Go unterschiedliche Typen sind.

Um ein Array in ein Slice umzuwandeln, können Sie die [:]-Syntax verwenden. Dadurch wird ein Slice erstellt, der auf die zugrunde liegenden Array-Daten verweist. Zum Beispiel:

d := Foo()
Bar(d[:])
Nach dem Login kopieren

Dadurch wird ein Teil der Daten aus dem Array d an die Funktion Bar übergeben. Das Slice verweist auf denselben zugrunde liegenden Puffer wie das Array, sodass keine Datenkopien stattfinden.

Das obige ist der detaillierte Inhalt vonWie kann ich ein Go-Array in ein Slice konvertieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage