GO语言基础学习

包(packages)

每个GO程序都有一个个包组成,程序由main包开始运行。
package main

func main(){
  //do something
}



导入(import)

go语言通过import关键字,将所需要使用的包引入到程序中,可以:
import(
    "fmt"
    "math/rand"
)
或者
import "fmt"
import "math/rand"


函数(Functions)

一个函数可以有0个或多个参数。参数的类型在变量的后面声明,用空格隔开,函数的返回类型在括号后面声明,如果有多个返回值,则用括号括起,用逗号分割,例如
func foo(a,b int) int{
	if a>b{
		return a
	}
	return b
}

这个函数定义是这样的,函数名为foo,返回值为int 型,参数为a,b均是intint型 func是关键字,声明这是一个函数
参数类型的连续性:如果一个参数没有声明类型,那么这个参数的类型与下一个参数的类型 相同
多返回值:go语言可以定义多个返回值,以尽可能的减少数据结构例如
func swap(x, y string) (string, string) {
    return y, x
}
从来没有如此简单的实现一个值交换

预定义返回值变量,这样写出来的函数是如此优美并简单
func split(sum int) (x, y int) {
    x = sum * 4 / 9
    y = sum - x
    return
}


变量(variables)

一个变量声明可以包含初始化,如有一个变量在声明中存在初始化式,那么变量的类型可以省略,变量将使用初始化式的常量类型。
var x, y, z int = 1, 2, 3
var c, python, java = true, false, "no!"
以上变量定义代码 x,y,z均为int类型,其初始值分别是1,2,3,c,python是bool类型,初始值为true,false,java是string,值为"no!"

短变量声明:省略类型的变量可以使用更加简洁的代码,例如
c, python, java := true, false, "no!"
省略关键字var 在赋值符号前加一个冒号":"

go 语言内置基本类型

bool

string

int  int8  int16  int32  int64
uint uint8 uint16 uint32 uint64 uintptr

byte // alias for uint8

rune // alias for int32
     // represents a Unicode code point

float32 float64

complex64 complex128

常量(contants)
常量的声明像变量一样,在前面加上const 关键字,常量的声明可以是字符,字符串,布尔值以及数值类型,常量不能使用:=初始化
const Pi = 3.14
而不能const Pi := 3.14
可以用括号声明一组常量

for循环

基本的for循环看起来和c,java差不多,只是去掉了括号:
    for i := 0; i < 10; i++ {
        sum += i
    }
第一个分号声明变量i并初始化为0,第二个语句定义循环结束条件,第三条语句定义循环结束后对循环因子的操作

for代替while的行为
i:1
for i<100{
   //dosomething
   i++
}

无条件循环while(true)
for{
    //loop forever
}

if条件

if与for的情况差不多,均是省略了括号
if expression {
}

if a>b{
}
else if a==b{
}else{
}

if中也可以声明变量
    if v := math.Pow(x, n); v < lim {
        return v
    }








func foo(a,b int) int{
     return math.Max(a,b)
}

1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。、可私 6信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 、可私信6博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 、可私信6博主看论文后选择购买源代码。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值