go语言学习代码

1、day01

package main //声明文件所在的包,每个go文件必须有归属包

import "fmt" //引入程序中需要用的包,为了使用包下的函数 比如函数:Println

func main() { //main 主函数 程序的入口
	fmt.Println("Hello Word,Hello Golang!") //在控制台打印输入一句话,双引号中的内容会原样输出
	// 1、变量的声明
	var age int
	// 2、变量的赋值
	age = 18
	// 3、变量的使用
	fmt.Println("age =", age)
	// 4、变量和赋值可以合成一句
	var age2 int = 19
	fmt.Println("age2 =", age2)
	// 变量重复定义会报错
}

2、day02

package main

import "fmt"

// 全局变量  定义函数外的变量
var ( //因为设计者认为,变量可以一次性声明
	n7 = 500
	n8 = "hello"
)

func main() { //局部变量
	// 1、第一种: 变量的使用方式:指定变量的类型,并且赋值
	var num int = 18
	fmt.Println(num)

	// 2、第二种:指定变量的类型,但是不赋值,使用默认值
	var num2 int
	fmt.Println(num2)

	// 3、第三种:如果没有写变量类型,那么根据后面的值进行判定变量的类型(自动类型推断)
	var num3 = "tom"
	fmt.Println(num3)
	// 4、第四种: 省略var 注意:= 而不是写为=
	sex := "男"
	fmt.Println(sex)

	fmt.Println(n7)
	fmt.Println(n8)

	fmt.Println("________________")
	// 声明多个变量
	var n1, n2, n3 int
	fmt.Println(n1)
	fmt.Println(n2)
	fmt.Println(n3)

	var n4, n5, n6 = 10, 8.72, "tom2"
	fmt.Println(n4)
	fmt.Println(n5)
	fmt.Println(n6)

	height, wite := 130, 10.2
	fmt.Println(height)
	fmt.Println(wite)
}

3、day03

package main

import (
	"fmt"
	"unsafe" //变量占用的字节数 导用这个包
)

func main() {
	// 定义一个整数类型
	var num1 int16 = 230
	fmt.Println(num1)

	var num3 = 123
	// printf函数的作用就是格式化,把num3的裂隙填充到%T的位置上    %T表示值的类型
	fmt.Printf("num3的类型是:%T", num3) //num的默认类型是int
	fmt.Println(unsafe.Sizeof(num3))

	// 表示学生的年龄
	var age byte = 18
	fmt.Println(age)
}

4、day04

package main

import "fmt"

func main() {
	// 定义浮点类型的数据
	var num01 float32 = 3.17
	fmt.Println(num01)
	var num02 float32 = -3.17
	fmt.Println(num02)
	var num03 float32 = 317e-2
	fmt.Println(num03)
	var num04 float32 = 317e+2
	fmt.Println(num04)
	// 浮点数可能会造成精度的损失,所以通常情况下,建议使用float64
	var num05 float32 = 3.454542897341
	fmt.Println(num05)
	var num06 float64 = 3.454542897341
	fmt.Println(num06)

	// go语言中默认的浮点类型是float64
	var num07 = 3.15
	fmt.Printf("num07对应的默认类型:%T", num07)

}

5、day05

package main

import "fmt"

func main() {
	// 定义字符类型的数据
	var c1 byte = 'a' //97
	fmt.Println(c1)
	var c2 byte = '8' //56
	fmt.Println(c2)
	var c3 byte = '(' //40
	fmt.Println(c3 - 10)
	// 字符的类型,本质上就是一个整数, 也可以直接参与,输出字符的时候,会对应的码值做出一个输出
	//字符,数字,标识等字符,底层是按照ASCII进行存储

	// 汉字字符,底层对应的是unicode码值
	var c4 int = '哈'
	fmt.Println(c4)
	// 对应的码值为21704,byte类型溢出,能存储的范围 可以用int
	//go字符对应的是使用utf-8编码 (unicode是对应的字符集,utf-8是其中的一种编码方案)

	var c5 byte = 'S'
	// 想显示对应的字符,必须采用格式化输出 %c
	fmt.Printf("%c", c5)

	// 转义字符的练习
	// \n  换行
	//  \b 退格
	//  \r 光标回到本行开头,后续输入就会替换原有的字符
	// \t 制表符
	//  \" 输出引号
	fmt.Println("sdasd\n123")
	fmt.Println("sda\bccc")

6、day06

package main

import "fmt"

func main() {
	// 测试布尔类型的数值
	var flag01 bool = true
	fmt.Println(flag01)
	var flag02 bool = false
	fmt.Println(flag02)
	var flag03 bool = 9 < 8
	fmt.Println(flag03)

	// 定义一个字符串
	var s1 string = "你好,欢迎使用go语言"
	fmt.Println(s1)
	// 字符串是不可变的:也就是说字符串一旦定义好,其中的字符的值就不能改变
	var s2 string = "abc"
	fmt.Println(s2)
	// 字符串的表示形式
	// (1)如果字符串中没有特殊字符,字符串的表示形式用双引号
	var s3 string = "dasdadasfda"
	fmt.Println(s3)
	// (2)如果字符串中没有特殊字符,字符串的表示形式用反引号''
	var s4 string = `pasdjask"sddd"
	`
	fmt.Println(s4)
	// (3) 字符串的拼接效果
	var s5 string = "qwe" + "azc"
	s5 += "zxc"
	fmt.Println(s5)
	// (4)当一个字符串过长的时候,要注意 +保留在上一行的最后
	var s6 string = "sadasdasdasfagfa" + "qweqtrqfadsfsgsfa" +
		"assss"
	fmt.Println(s6)
	// 验证默认值
	var a int
	var b float32
	var c float64
	var d string
	var e bool
	fmt.Println(a)
	fmt.Println(b)
	fmt.Println(c)
	fmt.Println(d)
	fmt.Println(e)
}
posted @   辉辉MITM  阅读(176)  评论(0)    收藏  举报
点击右上角即可分享
微信分享提示