GO语言学习【笔记】

GO语言【笔记】

在学习go语言时所做的一些笔记 ,希望能和大佬们一起学习进步!

1、基础语法

go语言的基本结构

package main
import (
    "fmt"
)
func main(){
    fmt.Println("hello wolrd") //注意输出时的Println,P要大写
}

学习一门语言首先要学会如何进行注释

package main
import (
    "fmt"
)
func main(){
    //单行注释
    //在变量与运算符中间加入空格,使程序看起来更加美观,如:fruit = apples +oranges;
    /*
	   多  行
	   注  释
	*/
}

在go语言中代码末尾可以不加“;”

但是两行代码写在同一行时必须要有";"(放在LiteIDE中会自动变成 两行代码,别的编译器还不清楚)一般不推荐使用。

//不推荐使用↓
fmt.Println("hello wolrd");fmt.Println("hello wolrd2")
//推荐使用↓
fmt.Println("hello wolrd")
fmt.Println("hello wolrd2")

在go语言中使用fmt.Sprintf格式化字符串并赋值给新串

var stockode = 123
var enddate ="2020-12-31"
var url="Cod=%d&endDate=%s"
var target_url = fmt.Sprintf(url, stockcode, enddate)
	fmt.Println(target_url)

2、变量

1、声明变量

//声明方法1
var a string = "abc"
//声明方法2
var a string
a ="abc"
//例:
package main
import (
    "fmt"
)
func main(){
    var a string = "abc"
    fmt.Println(a)
}

指定变量类型,如果没有初始化,则变量默认为零值

	var a = "abc"
	var b int
	var c bool
	fmt.Println(a, b, c)
	/*
	       数值类型(包括complex64/128)为 0
	       布尔类型为 false
	       字符串为 ""(空字符串)
	       以下几种类型为 nil:
	   var a *int
	   var a []int
	   var a map[string] int
	   var a chan int
	   var a func(string) int
	   var a error // error 是接口
	*/

2、没有var的变量声明

用 : = 去声明

出现在 : = 左侧的变量不应该是已经被声明过的,否则会导致编译错误

a := 1

这里是一个错误的例子:

var a int//这里是不需要去声明的如果声明就会报错
	a:=10
	fmt.Println(a)
//:=本身就是声明,所以:=所用的变量名必须是之前没有被声明过的否则会报错

这个才是正确的

    a := 1
	fmt.Println(a)
	b := "abc" //var b string="abc"
	fmt.Println(b)

3、多变量声明

var a, b int 
	a, b = 1, 2 //a,b := 1,2  
	fmt.Println(a, b)

这两种写法都可以

var a,b int =1,2
	fmt.Println(a,b)

3、常量

1、声明常量

常量可以用len(), cap(), unsafe.Sizeof()函数计算表达式的值。常量表达式中,函数必须是内置函数,否则编译不过:

const a string = "abc"
	fmt.Println(a)
const b = "abc"
	// println(b)
	fmt.Println(b)
	// fmt.Printf(b)

2、特殊常量iota

​ iota,特殊常量,可以认为是一个可以被编译器修改的常量。

​ 第一个iota等于0,每当iota在新的一行被使用时,它的值都会自动加1

​ iota 在 const关键字出现时将被重置为 0(const 内部的第一行之前),const 中每新增一行常量声明将使 iota 计数一次(iota 可理解为 const 语句块中的行索引)。

const (
		a = "na"
		b = iota //0
		c       //1
		d = 0    //独立值,iota+1
		e        //0     iota+1
		f = iota //4
		g        //5

	)
	fmt.Println(a, b, c, d, e, f, g)
//测试iota
	var h int = 0
	h = c+ f
	fmt.Println(h)
  • 9
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值