变量

在程序运行过程中,其值可以发生改变的量成为变量

变量存在内存中,在程序运行时用来暂时存储数据

常量

在程序运行过程中,其值不可以发生改变的量成为常量

变量的定义和使用

package main

import "fmt"

func main() {

//变量定义格式
//var 变量名 数据类型

//变量声明 未初始化 值为0
//var a int
//变量初始化
var a int = 123
//表达式   计算a+321的结果赋值给a
a = a + 321
//打印变量的值
fmt.Println(a);
}

自动推导类型

package main

import "fmt"

func main() {
//在go语言中可以根据变量赋值来确定数据类型

//格式:
//变量名 := 值
a := 123  //int 整型
b := 3.14 //float64 双精度浮点型
c := "你好" //string 字符串类型

fmt.Println(a)
fmt.Println(b)
fmt.Println(c)

//格式化打印
//占位符 %T 打印数据对应的类型
fmt.Printf("%Tn",a)
fmt.Printf("%Tn",b)
fmt.Printf("%Tn",c)
}

常量定义和使用

//常量定义 方法一
const Max int = 10
//常量定义 方法二 自动推导类型
const Min = 10

/* 常量 存放在 全局区->常量区 */
/* 变量 存放在栈区 */
package main

import "fmt"

func main0501() {
//变量定义
//var a int =10

//常量定义 常量名建议使用大写
const A int = 10
//A = 123 //err 常量在程序运行过程中不能赋值
fmt.Println(A)
//fmt.Println(&A)//err 常量地址不能获取
}

func main0502() {

//在程序运行过程中 可以将不需要修改的量 设置为常量
//圆周率 3.14
const PI float64 = 3.14
r := 2.5
//圆的面积
s := PI * r * r
//圆的周长
l := 2 * PI * r

fmt.Println(s)
fmt.Println(l)

}

func main0503() {
//常量自动推导类型
const MAX = 10
const PI = 3.14
fmt.Printf("%Tn", MAX)
fmt.Printf("%Tn", PI)
}

func main() {
//所有的字面常量 存在内存中全局区-》常量
fmt.Println("hello")
a := 10
a = a + 123
}

 

多重赋值和匿名变量

package main

import "fmt"

func main() {
//定义多个变量
//var a,b,c,d int
//
//a=1
//b=2
//c=3
//d=4

//多重赋值
//var a, b, c, d int = 1, 2, 3, 4

//自动推导类型 进行多重赋值
//匿名变量 在数据定义或数据接收时 如果不想处理的数据可以使用匿名变量_来接收数据但是不会处理
//注意:匿名变量不可以打印
a, b, _, _ := 1, 2.22, 'a', "你好"
//fmt.Println(a, b, c, d)
fmt.Printf("%Tn",a)
fmt.Printf("%Tn",b)
//fmt.Println(_)//err
}

格式输入

package main

import "fmt"

func main0701() {
//fmt.Print 打印数据不换行
//fmt.Println 打印数据并换行
fmt.Println("hello")
fmt.Println("world")
}

func main() {
//格式化输出 需要根据个数进行占位符使用
//%d 表示输出一个整型数据
//%f 表示输出一个浮点型数据 默认保留六位小数
//%T 表示输出一个变量对应的数据类型
a := 123456
b:=3.149999
//%5d 表示数据位数为5位 不足前面补空格
//%-5d 表示数据位数为5位 不足后面补空格
//%05d 表示数据位数为5位 不足前面补0
//如果数据超出位数 正常输出
fmt.Printf("%5dn",a)
//%.2f表示小数点保留两位 会对第三位进行四舍五入
fmt.Printf("%.2fn",b)
}

 

格式输出

package main

import "fmt"

func main0801() {
var a int
var b float64
//通过键盘为变量赋值
//& 是一个运算符 表示取地址运算符
//如果scan中有多个数据 可以使用空格或换行表示接收结束
fmt.Scan(&a, &b) //阻塞式请求

fmt.Println(a)
fmt.Println(b)
}

func main() {
var a int
var b float64
//格式化接收数据 需要使用占位符
fmt.Scanf("%d%f", &a, &b)

fmt.Println(a)
fmt.Println(b)
}

 

标识符命名规则

1、可以使用字母、数字、下划线

2、只能以字母下划线开头

3、不允许使用go语言关键字

4、区分大小写

5、见名知义

内容来源于网络如有侵权请私信删除

文章来源: 博客园

原文链接: https://www.cnblogs.com/muxinanan/p/14501948.html

你还没有登录,请先登录注册
  • 还没有人评论,欢迎说说您的想法!

相关课程

4410 9.8元 98元 1折