go语言中的复杂数据类型

package main

import (
    "fmt"
)

func main() {
    // 基本类型
    var a int = 10
    var b float64 = 3.14
    var c bool = true
    var d byte = 'A'
    var e rune = ''
    var f string = "Hello, Go!"
    var g complex128 = 1 + 2i

    // 数组
    var arr [3]int = [3]int{1, 2, 3}

    // 切片
    s := []int{4, 5, 6}

    // 字典(map)
    m := map[string]int{"one": 1, "two": 2}

    // 结构体
    type Person struct {
        Name string
        Age  int
    }
    p := Person{Name: "Tom", Age: 20}

    // 指针
    var ptr *int = &a

    // 通道
    ch := make(chan int, 1)
    ch <- 100
    val := <-ch

    // 接口
    type Animal interface {
        Speak() string
    }
    // 函数类型
    var fn func(int) int = func(x int) int { return x * x }

    fmt.Println("int:", a)
    fmt.Println("float64:", b)
    fmt.Println("bool:", c)
    fmt.Println("byte:", d)
    fmt.Println("rune:", e)
    fmt.Println("string:", f)
    fmt.Println("complex128:", g)
    fmt.Println("array:", arr)
    fmt.Println("slice:", s)
    fmt.Println("map:", m)
    fmt.Println("struct:", p)
    fmt.Println("pointer:", *ptr)
    fmt.Println("channel:", val)
    fmt.Println("function:", fn(5))
}

 

posted on 2025-09-21 17:04  漫思  阅读(7)  评论(0)    收藏  举报

导航