Heim  >  Artikel  >  Backend-Entwicklung  >  Aufgedeckte Go-Sprachdatentypen: vollständig angezeigt

Aufgedeckte Go-Sprachdatentypen: vollständig angezeigt

PHPz
PHPzOriginal
2024-01-09 14:29:464789Durchsuche

Aufgedeckte Go-Sprachdatentypen: vollständig angezeigt

Entschlüsseln Sie die Datentypen der Go-Sprache: Auf einen Blick sind spezifische Codebeispiele erforderlich

1. Einführung
Datentypen in Programmiersprachen sind für Entwickler sehr wichtig. Sie bestimmen, welche Typen wir speichern und betreiben können Daten. In der Go-Sprache ähnelt das Konzept der Datentypen dem anderer Programmiersprachen, die Go-Sprache verfügt jedoch über ein eigenes, einzigartiges Datentypsystem und eigene Merkmale. Dieser Artikel vermittelt Ihnen ein tiefgreifendes Verständnis der Datentypen der Go-Sprache und entschlüsselt diese Familie anhand spezifischer Codebeispiele.

2. Grundlegende Datentypen

Zu den grundlegenden Datentypen der Go-Sprache gehören: Boolescher Wert, Ganzzahl, Gleitkomma, komplexe Zahl, Zeichenfolge und Zeichen. Sie sind bool, int, float, complex, string und rune. Schauen wir sie uns separat an.

  1. Boolescher Typ (bool)
    Der boolesche Typ hat nur zwei Werte, nämlich wahr und falsch. Wie andere Sprachen können wir boolesche Typen verwenden, um den Programmfluss zu beurteilen und zu steuern.

Beispielcode:

package main

import "fmt"

func main() {
   var b bool = true
   fmt.Println(b)
}
  1. Integer (int)
    Der Integer-Datentyp kann ganzzahlige Werte speichern und seine Größe hängt von der zugrunde liegenden Computerarchitektur ab. In der Go-Sprache werden Ganzzahlen in vorzeichenbehaftete und vorzeichenlose Ganzzahlen unterteilt. Im Folgenden sind einige häufig verwendete Ganzzahl-Datentypen aufgeführt:
  • int8: vorzeichenbehaftete 8-Bit-Ganzzahl im Bereich von -128 bis 127.
  • int16: 16-Bit-Ganzzahl mit Vorzeichen, Wertebereich ist -32768 bis 32767.
  • int32: 32-Bit-Ganzzahl mit Vorzeichen, der Wertebereich liegt zwischen -2147483648 und 2147483647.
  • int64: vorzeichenbehaftete 64-Bit-Ganzzahl, der Wertebereich ist -9223372036854775808 bis 9223372036854775807.
  • uint8: Vorzeichenlose 8-Bit-Ganzzahl, Wertebereich 0 bis 255.
  • uint16: Vorzeichenlose 16-Bit-Ganzzahl, Wertebereich ist 0 bis 65535.
  • uint32: Vorzeichenlose 32-Bit-Ganzzahl im Bereich von 0 bis 4294967295.
  • uint64: Vorzeichenlose 64-Bit-Ganzzahl im Bereich von 0 bis 18446744073709551615.
  • int: Abhängig von der Anzahl der Bits im Betriebssystem und Compiler sind 32-Bit-Betriebssysteme 32-Bit-Ganzzahlen und 64-Bit-Betriebssysteme 64-Bit-Ganzzahlen.
  • uint: Abhängig von der Anzahl der Bits im Betriebssystem und Compiler sind 32-Bit-Betriebssysteme 32-Bit-Ganzzahlen ohne Vorzeichen und 64-Bit-Betriebssysteme 64-Bit-Ganzzahlen ohne Vorzeichen.

Beispielcode:

package main

import "fmt"

func main() {
   var i int = 10
   fmt.Println(i)
}
  1. Gleitkomma (Float)
    Der Gleitkomma-Datentyp kann Dezimalwerte speichern und hat zwei Genauigkeiten: float32 und float64.
  • float32: Gleitkommazahl mit einfacher Genauigkeit, auf 7 Dezimalstellen genau.
  • float64: Gleitkommazahl mit doppelter Genauigkeit, auf 15 Dezimalstellen genau.

Beispielcode:

package main

import "fmt"

func main() {
   var f float32 = 3.14
   fmt.Println(f)
}
  1. Komplex (komplex)
    Der komplexe Zahlentyp wird zur Darstellung komplexer Zahlen verwendet, deren Real- und Imaginärteil beide Gleitkommatypen sind. In der Go-Sprache haben komplexe Typen zwei Genauigkeiten: complex64 und complex128.
  • complex64: Der Realteil und der Imaginärteil werden durch zwei Float32 dargestellt.
  • complex128: Der Realteil und der Imaginärteil werden durch zwei float64 dargestellt.

Beispielcode:

package main

import "fmt"

func main() {
   var c complex64 = complex(1, 2)
   fmt.Println(c)
}
  1. String (Zeichenfolge)
    String ist ein Datentyp in der Go-Sprache, der zur Darstellung einer Zeichenfolge verwendet wird. Zeichenfolgen sind unveränderlich, das heißt, sie können in der ursprünglichen Zeichenfolge nicht geändert werden. Wir können Zeichenfolgen jedoch über einige Funktionen und Operationen verarbeiten. In der Go-Sprache werden Zeichenfolgen in doppelte Anführungszeichen gesetzt (").

Beispielcode:

package main

import "fmt"

func main() {
   var s string = "Hello, World!"
   fmt.Println(s)
}
  1. Character (Rune)
    Character (Rune) ist der Datentyp, der zur Darstellung von Unicode-Zeichen in der Go-Sprache verwendet wird. Es handelt sich tatsächlich um einen Ganzzahltyp, der den Codepunkt eines Unicode-Zeichens darstellt. Zeichen werden durch einfache Anführungszeichen (') dargestellt.

Beispielcode:

package main

import "fmt"

func main() {
   var r rune = '你'
   fmt.Println(r)
}

3. Zusammengesetzte Datentypen

Zusätzlich zu den grundlegenden Datentypen bietet die Go-Sprache auch. Einige zusammengesetzte Datentypen, einschließlich Array, Slice, Map, Struktur, Schnittstelle und Funktion.

  1. Array
    Array ist eine Datenstruktur mit fester Größe, die eine Reihe von Elementen desselben Typs speichern kann eines Arrays ist fest und kann nicht geändert werden.

Beispielcode:

package main

import "fmt"

func main() {
   var arr [3]int
   arr[0] = 1
   arr[1] = 2
   arr[2] = 3
   fmt.Println(arr)
}
  1. Slice ist eine Datenstruktur mit dynamischer Größe, die bei Bedarf automatisch erweitert werden kann Arrays oder andere Slices über den Slice-Operator [:]
Beispielcode:

package main

import "fmt"

func main() {
   arr := []int{1, 2, 3}
   fmt.Println(arr)
}

    Dictionary (map)
  1. Ein Wörterbuch ist eine ungeordnete Sammlung bestehend aus Schlüsseln und Werten. In der Go-Sprache wird ein Wörterbuch mit make erstellt Funktion
Beispielcode:

package main

import "fmt"

func main() {
   dict := make(map[string]int)
   dict["apple"] = 1
   dict["banana"] = 2
   dict["cherry"] = 3
   fmt.Println(dict)
}

    Struktur (Struktur)
  1. Eine Struktur ist ein benutzerdefinierter Datentyp, der mehrere Felder enthalten kann. In der Go-Sprache ist die Struktur definiert Verwenden des Typschlüsselworts
Beispielcode:

package main

import "fmt"

type Person struct {
   Name string
   Age  int
}

func main() {
   p := Person{"Alice", 18}
   fmt.Println(p)
}

    Interface
  1. Eine Schnittstelle ist ein abstrakter Datentyp, der eine Reihe von Methoden definiert. Die Schnittstelle kann durch einen konkreten Typ implementiert werden, und die Methoden, die die Schnittstelle implementieren, können aufgerufen werden über den Schnittstellentyp.
Beispielcode:

package main

import "fmt"

type Shape interface {
   Area() float64
}

type Circle struct {
   Radius float64
}

func (c Circle) Area() float64 {
   return c.Radius * c.Radius * 3.14
}

func main() {
   var s Shape
   c := Circle{5}
   s = c
   fmt.Println(s.Area())
}

  1. 函数(function)
    函数是一段可重复使用的代码块,它可以接受参数并返回结果。在Go语言中,函数是一等公民,可以像其他值类型一样被传递和赋值。

示例代码:

package main

import "fmt"

func Add(a, b int) int {
   return a + b
}

func main() {
   sum := Add(1, 2)
   fmt.Println(sum)
}

总结
本文通过具体的代码示例对Go语言的数据类型进行了解密,详细介绍了Go语言的基本数据类型和复合数据类型。希望本文可以帮助大家更好地理解和应用Go语言的数据类型。

Das obige ist der detaillierte Inhalt vonAufgedeckte Go-Sprachdatentypen: vollständig angezeigt. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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