Go语言学习笔记(一)

Go语言被称为21世纪的语言,具有速度快、高性能,简介明了,灵活,良好的并行架构,安全等特点。网络上有大量的Go语言与现有语言的对比,在此就不再赘述,我们直接开启Go语言的学习之旅。

Hello world

go语言的程序以.go结尾,下面是go语言的hello world

package main //go语言类似java的包结构,入口程序包名必须为main                                                                                                                                                                      
import(
        "fmt"  //引入系统包,fmt主要包括了输入输出等
      )   
func main(){//入口函数,函数名为 func main()
    fmt.Println("hello world")
}

Go语言程序行末不需要分号,除非两个以上的statement 处于同一行。实际上,换行符之后跟上特定的符号会被转化成为分号,所以有一些需要注意的格式。

  1. 大括号{ 要处于声明的行末,而不能独自一行
  2. 在类似x+y的表达式中,可以在+后换行,而不能再+前换行。

例如

package main
import(
        "fmt"
      )   
func main() 
{//syntax error: unexpected semicolon or newline before {
    x := 1
    y :=2 
    var z= x+
    y  
    var z= x
    +y  // +y evaluated but not used
    fmt.Println(z)
} 
go的控制流
if else
package main
import(
        "fmt"
      )   
func main() {
    x := 1
    y :=2 
    var z= x + y 
    if z > 3{
        fmt.Println("yes")
    }else{                                                                                                                                                                        
        fmt.Println("no")
    }

    /*--
    if z > 3{
        fmt.Println("yes")
    }
    else{//compile error                                                                                                                                                                     
        fmt.Println("no")
    } 
    //----*/   
}
循环

go语言中的循环依靠for关键词实现,没有while,基础表达式为

for initialization; condition; post{
//TODO: content
}

initialization循环前表达式
condition 进入循环的条件
post每次循环结束之后执行的表达式

任何一部分都可以省略,于是我们可以得到

//通常意义的for
for x=1;x<10;x++{
        fmt.Println(x)
}

// 类似while
x = 1 
for x <10{
    fmt.Println(x)
    x++ 
}

//无线循环
x = 1 
for{
    fmt.Println(x)
    x++ 
    if x >= 10{ 
        break
    }   
} 

//range 作用于slice(切片)
nums := []int{2, 3, 4} //slice声明,以后再讨论
sum := 0
for _, num := range nums {//go语言不允许未使用的变量声明,需要用_占位
    sum += num 
}   
fmt.Println("sum:", sum)
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值