1.package

package是最基本的分发单位和工程管理中依赖关系的体现。

每个语言源代码文件开头都拥有一个package声明,表示源码文件所属代码包。

要生成go语言可执行程序,必须要有main的pakcage包,求必须在该包下,且必须在该包下有main函数

同一个路径下只能存在一个pakcage,一个package可以拆成多个源文件组成。

 

2.import

    1.import语句可以导入源码文件所依赖的package包

      * 不得导入源码文件中没有用到的package,否则GO语言编译器会报错

      * import 主要语法两种  是否加括号

 

    2.import导入包的顺序:

      如果一个main导入其他包,包将被顺序导入,

      如果导入的包中以来其他包(包B),会首先导入B包,然后初始化B包中的常量与变量,

      最后如果B中有init,会自动执行initial();所有包到入完成之后才会对main中常量和变量进行初始化,然后执行main中的          init函数(如果存在),最后执行main函数;

 

3.import别名,“.”,"_"

别名操作的含义是:将导入的包命名为另一个容易记忆的别名。

下划线(—)操作的含义是:导入该报,但不导入整个包,而是执行该包中的init函数,因此无法通过包名来调用包中的其他函数。使用下划线(—)操作往往是为了注册包里的引擎,让外部可以方便地使用

 

 

 

go语言:

数据类型:整型、浮点型、字符串型、布尔型、复数

派生类型:指针、数组、结构化、channel、函数、切片、接口、map

 

Go语言的变量和常量

   变量声明,初始化与赋值

    单个变量的声明和赋值:
    1.变量的声明格式:var<变量名称>[变量类型]
    2.变量的赋值格式:<变量名称>=<值,表达式,函数等>
    3.声明和赋值同时进行:var<变量名称>[变量类型]=<值,表达式,函数等>
    4.分组声明格式:
 

    var( i int 

        j float32

        name string

        )

 

变量的类型转换

注意:在进行类型转换的时候,相互转换的类型必须兼容的情况下才可以

 

变量可见性规则:

大写字母开头的变量是可导出的,也就是其它包可以读取的,是公用变量;

小写字母开头的就是不可导出的,是私有变量

 

常量的定义充形式上可分为显示和隐式:

   显示:const identifier [type] =value
   隐式 :const identifier =value(通常叫无类型常量)
常量可以提使用内置表达式定义:如:len(),unsafe.Sizeof()等
常量范围目前只支持布尔型、数字型、(整数型、浮点型和复数)和字符串型

 

常量也可以单行声明并赋值:

 const apple,banana string=”苹果“,”香蕉“
 const a,b=1,"你好"(隐式声明常量会自动识别数据类型)
 UTF8每个汉字占三个字节大小

 

iota特殊常量的使用:

iota在const关键字出现时将会被重置为0

const中每新增一行常量声明将使iota计数一次

iota常见使用法:

    跳值使用法

    插队使用法

    表达式隐式使用法

    单行使用法

import "fmt"
const a int32 = iota
const b = iota
const (
	d = iota         //0
	e = iota         //1
	_ = iota         //下划线相当于把值给垃圾桶  2  跳值使用
	f = iota         //3
	g = 3.14         //本来为4  赋值为3.14
	h = iota         //5
)
const(
	m = iota * 2
	n                      //隐试继承表达式 *2 
	s

)
func main() {

	fmt.Print("a的常量值: ")
	fmt.Print(a)
	fmt.Print("\n")
	fmt.Print("b的常量值: ")
	fmt.Print(b)
	fmt.Print("\n")
	fmt.Print("d的常量值: ")
	fmt.Print(d)
	fmt.Print("\n")
	fmt.Print("e的常量值: ")
	fmt.Print(e)
	fmt.Print("\n")
	fmt.Print("f的常量值: ")
	fmt.Print(f)
	fmt.Print("\n")
	fmt.Print("g的常量值: ")
	fmt.Print(g)
	fmt.Print("\n")
	fmt.Print("h的常量值: ")
	fmt.Print(h)
	fmt.Print("\n")
	fmt.Print("m的常量值: ")
	fmt.Print(m)
	fmt.Print("\n")
	fmt.Print("n的常量值: ")
	fmt.Print(n)
	fmt.Print("\n")
	fmt.Print("s的常量值: ")
	fmt.Print(s)
}
a的常量值: 0
b的常量值: 0
d的常量值: 0
e的常量值: 1
f的常量值: 3
g的常量值: 3.14
h的常量值: 5
m的常量值: 0
n的常量值: 2
s的常量值: 4

GO语言运算符--算术运算符 代码

++;--在GO中只能放在后面,如a++;b--

当a=2;b=3

 

 

GO语言 运算符--关系运算符代码

当a=2;b=2

关系运算符结果只有真假(true;false)

 

控制语句:goto ; break ;continue

goto :跳到指定的代码执行。