Golang笔记之变量

package main

// 关键字var 声明变量 类型信息放在变量名后
//声明一个int型变量
var v1 int

//声明一个string类型
var v2 string

//声明多个变量
var v3, v4 bool

//[0 0 0 0 0 0 0 0 0 0] 数组
var v5 [10]int

//数组切片
var v6 []int

//声明结构体
var v7 struct {
    f int
}

// 声明指针
var v8 *int

//声明map key为string类型,value是int类型
var v9 map[string]int

// 匿名函数和闭包
var v10 func(a int) int

//多个需要声明的变量放在一起
var (
    name int
    age  string
)
package main

import "fmt"

func main() {
    //声明变量的初始化,var 可以省略写法
    var v1 int = 10
    //编译器可以自动算出v2的类型
    var v2 = 10
    //编译器自动算出v3的类型
    //同时进行变量声明和初始化
    v3 := 10
    fmt.Println(v1, v2, v3)
}

//  出现在:= 左侧的变量 只能声明一次,不可重复
package main

import "fmt"

//声明之后再赋值
func main() {
    var i int
    i = 100
    var j int
    j = 50
    //Go语言的多重赋值,如下代码交换i和j的变量
    //go的多重赋值特性可以很明显的优化代码,相比c/c++
    i, j = j, i
    fmt.Println(i, j)
}
package main

import "fmt"

//使用强类型语言编程时,调用函数时为了获取一个值,却因为函数返回多个值,又得定义一堆变量
//可以使用多重返回和匿名变量来避免这些问题
func GetName() (firstname, lastname, nickname string) {
    return "yu", "yuchao", "chaoge"
}

//只想获得nickname,函数调用语句可以写
func main() {
    //优化代码的清晰度
    _, _, nickname := GetName()
    fmt.Println(nickname)

}
package main

//声明go代码所属的包,包是go例最基本的分发单位,要生成可执行程序,必须名为main,且下面有个main()函数,作为执行起点

//导入本程序所以来的包,下列用到Println()函数,所以导入fmt
import "fmt"

//不得在源代码中写入未使用的包,否则编译器会出错
//软件工程的设计哲学,强制左花括号 { 的放置位置
//函数名的大小写规则
func Compute(value1 int, value2 float64) (resule float64, err error) {
    //函数体

    fmt.Println(value1, value2)
    return
}

//main函数不能带参数,也不能定义返回值,命令行传入的参数存在os.Args变量中
func main() {
    Compute(1, 3)
}
package main

//常量是编译期间就已知,而且不可改变,可以是数值类型(整型、浮点型、复数)、布尔类型、字符串
const Pi float64 = 3.14159265358979323846

//无类型浮点常量
const Zero = 0.0

const (
    //无类型常量
    size int64 = 1024
    eof        = -1
)

//常量多重赋值 u=0.0  v=3.0
const u, v float32 = 0, 3
//无类型整型,字符串常量
const a, b, c = 3, 4, "foo"

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏C语言C++游戏编程

轻松学习C语言编程之函数知识详解

函数是一组一起执行任务的语句。每个C程序至少有一个函数,即main,所有最简单的程序都可以定义其他函数。您可以将代码划分为单独的函数。如何在不同的函数之间划分代...

1502
来自专栏编程

浅谈Go语言中闭包的使用

闭包(Closure),又称词法闭包(Lexical Closure)或函数闭包(function closures),是引用了自由变量的函数。这个被引用的自由...

4608
来自专栏靠谱PM

JavaScript基本语法(二)

1.if语句 2.if-else语句 3.三元表达式 4.if-else if-else if语句 5.switch-case 6.总结

722
来自专栏前端架构与工程

【译】《Understanding ECMAScript6》- 第二章-函数

函数在任何一门编程语言中都是很重要的一个环节。JavaScript至今已有多年的历史,但是它的函数仍然停留在很初级的阶段。函数问题的大量堆积,以及某些函数非常微...

2227
来自专栏Golang语言社区

Go语言中怎样判断数据类型

要判断数据类型,可以用Go的空接口: 建一个函数t 设置参数i 的类型为空接口,空接口可以接受任何数据类型 func t(i interface{}) { ...

3785
来自专栏Python中文社区

Python有趣的解包用法

python中的解包可以这样理解:一个list是一个整体,想把list中每个元素当成一个个个体剥离出来,这个过程就是解包,我们来看下面这些例子(分为10个部分)...

1534
来自专栏北京马哥教育

Python 循环语句

? 文 | 云豆 来源 | 菜鸟教程 ? 云豆贴心提醒,本文阅读时间2分钟,文末有秘密! 本章节将向大家介绍Python的循环语句,程序在一般情况下是...

4184
来自专栏河湾欢儿的专栏

js基础

6162
来自专栏Golang语言社区

举例讲解Go语言中函数的闭包使用

和变量的声明不同,Go语言不能在函数里声明另外一个函数。所以在Go的源文件里,函数声明都是出现在最外层的。 “声明”就是把一种类型的变量和一个名字联系起来。 G...

3285
来自专栏用户2442861的专栏

python strip()函数

http://www.cnblogs.com/kaituorensheng/archive/2013/05/23/3096028.html

1292

扫码关注云+社区

领取腾讯云代金券