内置变量类型与常量

2018-05-26  本文已影响0人  __apple

静态语言,往往都会有一些,内置的变量类型供我们使用,动态语言是在程序运行的时候,动态的添加上去的,这个由解释器帮我们完成,我们不需要考虑,这可能也是动态语言,慢的原因之一吧!
我们来看Go语言由多少种变量类型呢?

func euler() {
    fmt.Printf("%.3f\n",
        cmplx.Exp(1i*math.Pi)+1)
}

我们用这个cmplx的类型,可以很简单进行描述一些很复杂的数学公式,这也就使Go语言在数学计算方面的能力变的很强了。
说完了内置变量,还有一个比较有意思的东西,常量
我们来看一下Go语言是如何定义常量的

func consts() {
    const (
        filename = "abc.txt"
        a, b     = 3, 4
    )
    fmt.Println(filename, c)
}

直接用const关键字,就可以了,另外如果常量定义在了函数的外部,那么在包内部都可以使用,一般在其他的语言当中,我们都喜欢把常量名字进行大写,但是我们在Go语言中一般不这么做,因为在Go语言中,大小写是有含义的,首字母大写代表的public.
接下来我们来讲一个特殊的常量,枚举类型
Go语言没有特殊的枚举关键字, 一般我们都使用const()

func enums() {
    const (
        cpp = iota
        php
        python
        golang
        javascript
    )

    const (
        b = 1 << (10 * iota)
        kb
        mb
        gb
        tb
        pb
    )

    fmt.Println(cpp, javascript, python, golang)
    fmt.Println(b, kb, mb, gb, tb, pb)
}

这里的iota可以是个自增值的种子如果你写的出来表达式,那么就能把你想要的定义出来,是不是感觉像个彩蛋,很牛逼的感觉 有没有,怎么样你学会了嘛!赶紧在编辑器里面练两次就会了,加油!!!!

上一篇下一篇

猜你喜欢

热点阅读