Inhaltsverzeichnis
Frageninhalt
enthält. Das Array wird extern definiert und ich möchte, dass jede der vier Strukturen Methoden hat.)
Heim Backend-Entwicklung Golang golang: JSON-Arrays, die auch Methoden haben

golang: JSON-Arrays, die auch Methoden haben

Feb 09, 2024 am 10:15 AM
json数组

golang:也有方法的 json 数组

Der PHP-Editor Youzi bringt Ihnen einen Artikel über Golang mit dem Thema „Golang: JSON-Arrays, die auch Methoden haben“. Golang ist eine einfache und effiziente Programmiersprache und JSON-Array ist eines der am häufigsten verwendeten Datenformate. In diesem Artikel wird untersucht, wie JSON-Arrays in Golang bearbeitet werden, und es werden einige nützliche Methoden vorgestellt. Ganz gleich, ob Sie Anfänger oder erfahrener Entwickler sind, dieser Artikel kann Ihnen einige wertvolle Informationen und Tipps liefern. Finden wir es gemeinsam heraus!

Frageninhalt

Ich habe eine Datenstruktur wie diese:

type (
  parent struct {
    items []*child
  }
  child struct {
    field string `json:"field"`
  }
)
Nach dem Login kopieren

Ich hoffe auch parent, dass es einen Weg gibt:

func (p *parent) example() { }
Nach dem Login kopieren

Aber die JSON-Anforderung ist, dass das übergeordnete Element nur ein Array ist:

[
  {
    "field": "data"
  }
]
Nach dem Login kopieren

Ich möchte, dass parent 是一个简单的数组,但为了让 parent ein einfaches Array ist, aber damit

Methoden hat, darf es kein Array-Typ sein.

Gibt es eine Möglichkeit, diese beiden Probleme mit einer Datenstruktur zu lösen?

greatgrandparent包含[]grandparent,而grandparent有一个包含parentparent(Um die Sache noch komplizierter zu machen, besteht die tatsächliche Datenstruktur, die ich verwenden muss, aus zwei Ebenen: greatgrandparent enthält []grandparent und grandparent Dort ist ein

, das

enthält. Das Array wird extern definiert und ich möchte, dass jede der vier Strukturen Methoden hat.)

Problemumgehung

Damit das übergeordnete Element Methoden hat, darf es kein Array-Typ sein. Das ist möglich, es muss nur einen

Namen

haben, da nur benannte Typen (oder Zeiger auf benannte Typen) Methoden implementieren können. Hier ist der gültige Go-Code:

type parent []*child

func (p parent) example() { /* ... */ }
Nach dem Login kopieren
parentBeachten Sie, dass das obige

ein Slice und kein Array ist. Arrays in go haben eine statische Länge, Sie können sie nicht vergrößern oder verkleinern, Slices hingegen haben eine dynamische Länge, Sie können ihre Größe nach Belieben ändern. Arrays und Slices sind eng miteinander verbunden, aber nicht gleich.

json.unmarshaler/json.marshaler

Eine andere Möglichkeit besteht darin, den Strukturtyp die

-Schnittstelle implementieren zu lassen:

type parent struct { Items []*child }

func (p *parent) UnmarshalJSON(data []byte) error {
    return json.Unmarshal(data, &p.Items)
}

func (p parent) MarshalJSON() ([]byte, error) {
    return json.Marshal(p.Items)
}
Nach dem Login kopieren
🎜Das Obige generiert die erforderliche JSON-Struktur. 🎜

Das obige ist der detaillierte Inhalt vongolang: JSON-Arrays, die auch Methoden haben. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Repo: Wie man Teamkollegen wiederbelebt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Abenteuer: Wie man riesige Samen bekommt
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Detaillierte Erläuterung der Sortier- und Filtervorgänge von JSON-Arrays in Java. Detaillierte Erläuterung der Sortier- und Filtervorgänge von JSON-Arrays in Java. Sep 06, 2023 pm 03:22 PM

Ausführliche Erläuterung der Sortier- und Filtervorgänge von JSON-Arrays in Java. In der Java-Entwicklung ist die Verarbeitung von JSON-Daten eine häufige Aufgabe. Als eine der am häufigsten verwendeten Datenstrukturen erfordert das JSON-Array in praktischen Anwendungen häufig Sortier- und Filtervorgänge. In diesem Artikel werden die Sortier- und Filtervorgänge von JSON-Arrays in Java ausführlich vorgestellt und entsprechende Codebeispiele bereitgestellt. 1. Sortiervorgang des JSON-Arrays: Verwenden Sie das JSONArray-Objekt, um das JSON-Array in Java zu speichern, und verwenden Sie die JSON-Bibliothek, um JSON-Daten zu verarbeiten

Schneller Einstieg: Techniken zum Zusammenführen und Aufteilen von JSON-Arrays in Java. Schneller Einstieg: Techniken zum Zusammenführen und Aufteilen von JSON-Arrays in Java. Sep 06, 2023 am 10:21 AM

Schneller Einstieg: JSON-Array-Zusammenführungs- und Aufteilungstechniken in Java In der modernen Softwareentwicklung sind Datenformat und -übertragung immer wichtiger geworden. Unter diesen ist JSON (JavaScriptObjectNotation) ein häufig verwendetes Datenformat, das sich besonders für Front-End- und Back-End-Interaktion und Datenspeicherung eignet. In der Java-Entwicklung müssen wir uns häufig mit JSON-Objekten und JSON-Arrays befassen. In diesem Artikel wird erläutert, wie Sie JSON-Arrays in Java zusammenführen und aufteilen, sowie Tipps und Beispiele für die Implementierung dieser Vorgänge.

Wie konvertiert man ein JSON-Array in Java in CSV? Wie konvertiert man ein JSON-Array in Java in CSV? Aug 21, 2023 pm 08:27 PM

JSON kann als Datenaustauschformat verwendet werden, es ist leichtgewichtig und sprachunabhängig. Ein JSONArray kann Textzeichenfolgen analysieren, um vektorähnliche Objekte zu erzeugen, und unterstützt die java.util.List-Schnittstelle. Wir können ein JSON-Array in das CSV-Format konvertieren, indem wir die Klasse org.json.CDL verwenden, die eine statische Methode toString() zum Konvertieren von JSONArray in durch Kommas getrennten Text bereitstellt. Wir müssen das Paket org.apache.commons.io.FileUtils importieren, um Daten mithilfe der Methode writeStringToFile() in einer CSV-Datei zu speichern. Syntaxpublicstaticj

Wie können wir zwei JSON-Arrays in Java zusammenführen? Wie können wir zwei JSON-Arrays in Java zusammenführen? Aug 20, 2023 pm 11:05 PM

Ein JSON ist ein leichtes Datenaustauschformat und das Format von JSON ist ein Schlüssel-Wert-Paar. JSONArray kann Text aus einer Zeichenfolge analysieren, um ein vektorähnliches Objekt zu generieren, und unterstützt die Schnittstelle java.util.List. Mit der Klasse org.json.simple.JSONArray können wir zwei JSON-Arrays in Java zusammenführen. Mit der Methode addAll() (geerbt von der Schnittstelle java.util.List) können wir im folgenden Programm zwei JSON-Arrays zusammenführen. Beispiel

Wie deserialisiere ich ein JSON-Array in einen generischen Listentyp in Java? Wie deserialisiere ich ein JSON-Array in einen generischen Listentyp in Java? Aug 20, 2023 pm 12:13 PM

Die Gson-Bibliothek stellt eine Klasse namens com.google.gson.reflect.TypeToken zum Speichern generischer Typen bereit, indem eine GsonTypeToken-Klasse erstellt und der Klassentyp übergeben wird. Mithilfe dieses Typs kann Gson die in der generischen Klasse übergebene Klasse kennen. Syntax publicclassTypeToken<T>extendsObject Im folgenden Beispiel können wir ein JSON-Array in eine Liste generischer Typen deserialisieren: importjava.lang.reflect.Type;importjava.util.*;importcom.go

Einsteigerhandbuch: FAQs zum Bearbeiten von JSON-Arrays in Java. Einsteigerhandbuch: FAQs zum Bearbeiten von JSON-Arrays in Java. Sep 06, 2023 am 11:22 AM

Einsteigerhandbuch: FAQs zum Bearbeiten von JSON-Arrays in Java Zusammenfassung: Mit der Entwicklung des Internets ist JSON (JavaScriptObjectNotation) zu einem gängigen Format für den Datenaustausch geworden. In der Java-Entwicklung ist die Bearbeitung von JSON-Arrays eine häufige Aufgabe. In diesem Artikel werden häufige Fragen zum Betrieb von JSON-Arrays in der Java-Entwicklung beantwortet und Codebeispiele bereitgestellt. Wie erstelle ich ein JSON-Array? In Java können Sie Bibliotheken von Drittanbietern wie JSON-Java verwenden

Wie können wir ein JSON-Array mithilfe der Streaming-API in Java implementieren? Wie können wir ein JSON-Array mithilfe der Streaming-API in Java implementieren? Sep 19, 2023 pm 06:01 PM

Die JsonGenerator-Schnittstelle kann zum Streamen von JSON-Daten an eine Ausgabequelle verwendet werden. Wir können ein JSON-Array mit der Methode writeStartArray() von JsonGenerator erstellen oder implementieren, die ein JSON-Name/Start-Array-Zeichenpaar in den aktuellen Objektkontext schreibt. Die Methode writeStartObject() schreibt das JSON-Startobjektzeichen, das nur im Array-Kontext gültig ist, und die Methode writeEnd() schreibt das Ende des aktuellen Kontexts. Syntax JsonGeneratorwriteStartArray(Stringname) Beispiel importjava.io.*;imp

Analysieren Sie das JSON-Array in Golang mit einem benutzerdefinierten Typ Analysieren Sie das JSON-Array in Golang mit einem benutzerdefinierten Typ Feb 09, 2024 am 10:39 AM

Ich versuche, ein JSON-Array in Golang mit dem folgenden Format zu analysieren: 2beef840f8f9d8bb724c7736cb14989 Der JSON sollte beispielsweise das Schema verschiedener Tabellen enthalten. Ich habe den folgenden Code ausprobiert, aber das Schema gibt leer zurück: packagemainimport("encoding/json""io""log""os")typeColumnTypestruct{Namestring`json:"name"`Typestring`json:"

See all articles