Skip to content

Latest commit

 

History

History
66 lines (62 loc) · 1.23 KB

1.md

File metadata and controls

66 lines (62 loc) · 1.23 KB

第02章 变量,常量以及与其他语言的差异

1.1 go语言实现一个Fibonacci数列

func TestFib(t *testing.T) {
	a:=1
	b:=1
	t.Log(a)
	for i:=0;i<5 ;i++  {
		t.Log("",b)
		temp:=a
		a=b
		b=temp+a
	}
}

1.2 go语言多变量赋值 ,一个赋值语句中实现对多个变量赋值

func TestExchange(t *testing.T)  {
	a:=1
	b:=2
	a,b=b,a
	t.Log(a,b)
}

2.1定义常量

快速设置连续值,定义一周七天,值连续+1

const(
	Monday =iota +1
	Tuesday
	Wedensday
	Thurday
	Friday
	Saturday
	Sunday
)

2.2 第一个比特位为1 其他位为0 表示Open 依此类推...

const (
	Open =1 << iota
	Close
	Pending
)

2.3 输出变量值 输出为1,6

func TestConstantTry(t *testing.T)  {
	t.Log(Monday)
	t.Log(Saturday)
}

2.4比特位比较 1的二进制为0001 输出 true false false

func TestConstantTry1(t *testing.T)  {
	a:=1
	t.Log(a&Open==Open,a&Close==Close,a&Pending==Pending)
}

总结:

变量我这里建议大家根据自己的习惯,选择简洁的赋值方式,去编写你的go程序,比较好

常量,大家了解下与java,c++这些常量连续赋值的一个简化方式就足够了