欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

GO基础之变量的使用

程序员文章站 2022-04-14 20:45:06
当一个变量被声明之后,系统自动赋予它该类型的零值:int 为 0,float 为 0.0,bool 为 false,string 为空字符串,指针为 nil 等。所有的内存在 Go 中都是经过初始化的。 ......

go语言:是静态类型语言,因此变量(variable)是有明确类型的,编译器也会检查变量类型的正确性.

一、基本类型

GO基础之变量的使用

变量的声明:全局变量必须有关键字var

var name [type]  指定数据类型

var 是声明变量的关键字,name 是变量名,type 是变量的类型。
例如:var num_2 int = 10;

var name;   不指定数据类型,由系统自己推断具体的数据类型

var dg = "str"

var_name :=value   不指定数据类型,由系统自己推断具体的数据类型

dd := 1223

批量声明:

var (
    str_1 int
    db    float64
)

 

数据的默认值

当一个变量被声明之后,系统自动赋予它该类型的零值:int 为 0,float 为 0.0,bool 为 false,string 为空字符串,指针为 nil 等。所有的内存在 go 中都是经过初始化的。

变量别名

type (
    //给string类型起一个别名str
    str string
    //给float64类型起一个别名double
    double float64
)

func main() {
    //直接使用别名定义变量
    var price double = 123.3435
    std.println(price)
    var name str = "张三"
    std.println(name)
}

 

变量的类型转换

go语言不像java可以进行隐式转换,他必须显示的进行

func main() {
    var num float32 = 1.2
    //将float32转int
    var bu int = int(num)
    std.println(bu)
}

二、常量

常量的定义格式和变量的声明语法类似:const name [type] = value

const pi = 3.14159 // 相当于 math.pi 的近似值

批量定义

const (
    e  = 2.7182818
    pi = 3.1415926
)

iota 常量生成器
常量声明可以使用 iota 常量生成器初始化,它用于生成一组以相似规则初始化的常量,但是不用每行都写一遍初始化表达式。在一个 const 声明语句中,在第一个声明的常量所在的行,iota 将会被置为 0,然后在每一个有常量声明的行加一。

const (
    sunday = iota
    monday
    tuesday
    wednesday
    thursday
    friday
    saturday
)

func main() {
    std.println(sunday)
    std.println(monday)
    std.println(tuesday)
    std.println(wednesday)
    std.println(thursday)
    std.println(friday)
    std.println(saturday)
}
结果:

0
1
2
3
4
5
6

 二、语句:

//1、##################for#############
    var fa int
    for {
        if fa > 10 {
            std.println("fa >10")
            break
        }
        fa++
    }
    //2、##################for#############
    var ffa int = 12
    for ffa > 10 {
        std.println("ffa >10")
        ffa--
    }
    //3、##################for#############
    for i := 0; i < 3; i++ {
        std.println("for")
    }
var flag bool
    if flag {
        std.println("=======true=======")
    } else {
        std.println("=======false=========")
    }
    if a := 4; a > 1 {
        std.println(a)
    }