English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Golang Grund教程

Golang Steuerausdrücke

Golang Funktion & Methode

Golang Struktur

Golang Schnitt und Array

Golang String(String)

Golang Zeiger

Golang Schnittstelle

Golang Konkurrenz

Golang Ausnahme(Error)

Andere Golang-Mischungen

Go Typumwandlung

Voraussetzungen, Sie sollten gelernt haben:Golang DatenTypen

wird eine Typumwandlung durchgeführt, wenn wir einen Wert eines DatenTyps einem anderen DatenTyp zuweisen. Typumwandlungen wie in C / C ++Statische Typensprachen wie Java bieten Unterstützung für implizite Typumwandlungen, aber Golang ist anders, weil es selbst dann, wenn DatenTypen kompatibel sind, eswird auch nicht unterstütztAutomatische Typumwandlung oder implizite Typumwandlung. Der Grund ist, dass Golangs starres Typensystem dies nicht erlaubt. Für Typumwandlungen muss eine explizite Umwandlung durchgeführt werden.

Wie führt Golang Typumwandlungen durch?
Wenn Sie bestimmte Merkmale der DatenTypenstruktur nutzen müssen, müssen wir die Entitäten von einem DatenTyp in einen anderen Typ umwandeln. Die allgemeine Syntax zum Konvertieren eines Wertes val in einen Typ T ist T(val).

var w3codebox1 int = 845
// Explizite Typumwandlung
var w3codebox2 float64 = float64(w3codebox1)
var w3codebox3 int64 = int64(w3codebox1)
var w3codebox4 uint = uint(w3codebox1)
//Berechnung des Durchschnitts
package main
import "fmt"
func main() {
    var gesamtbetrag int = 446
    var zahl int = 23
    var avg float32
    // Explizite Typumwandlung
    avg = float32(Gesamtbetrag) / float32(Zahl)
    // Ergebnis anzeigen
    fmt.Printf("Durchschnitt = %f\n", avg)
}

Ausgabe:

Durchschnitt = 19.391304

Hinweis:Da Golang ein starkes Typensystem hat, ist es nicht erlaubt, numerische Typen in Ausdrücken zu mischen (z.B. Addition, Subtraktion, Multiplikation, Division usw.) und es ist nicht erlaubt, zwischen zwei gemischten Typen Typzuweisungen durchzuführen.

var w3codebox1 int64 = 875
//Es wirft uns einen Fehler beim Kompilieren vor
//weil eine gemischte Typenoperation ausgeführt wird, z.B. int64als int-Typ
var w3codebox2 int = w3codebox1
var w3codebox3 int = 100
//Es wirft einen Compilerfehler aus
//Das ist eine ungültige Operation
//weil der Typ gemischt ist int64 und int addieren
var addition = w3codebox1 + w3codebox3