Go语言学习草稿(1) 变量

变量和常量

package main

import "fmt"

// 定义变量, 能赋值
var name string

// 批量定义变量 (常用)
var (
	age int
	ok  bool
)

// 定义常量
const PI = 3.1415926

// 批量定义常量
const (
	STATUS_OK        = 200
	STATUS_NOT_FOUND = 404
)

// 定义常量, 省略值
const (
	N1 = 100
	N2 // 不赋值默认跟上一行一样
	N3
)

// iota是常量计数器. 一般用来实现枚举
const ( // iota遇到const归0
	A1 = iota
	A2 // 每新增一行iota就+1, A2=1
	A3 = 100
	A4 = iota // A2=3
)

// iota定义数量级
const (
	_  = iota
	KB = 1 << (10 * iota) // 1024
	MB = 1 << (10 * iota) // 2^20
	GB = 1 << (10 * iota) // 2^30
)

func main() {
	fmt.Println("Hello World!")

	name = "lixiang"
	age = 16
	ok = true

	fmt.Printf("name: %s", name)
	println()
	fmt.Printf("%v%d", ok, age)
	println(ok)
	fmt.Println()

	var s1 string = "张三"
	println(s1)

	var s2 = "张三" // 自动推断类型
	println(s2)

	s3 := "嘿嘿嘿" // 简短变量声明 (常用)
	println(s3)

	_ := 12 // _ 是匿名变量, 一般用于占位
    println(math.MaxFloat32) // float32的最大类型
    fmt.Printf("%T\n", 1.234) // 输出变量类型. 浮点数默认是64位.
    
	var b2 bool = false
	fmt.Printf("%T:%v\n", b2, b2) // %v是通用的标志, 可以输出各种类型的变量. %#v会给字符串周围加双引号
	
	s := `世界你好
你好世界`
	path := `C:\Users\xx\AppData`
	
	ss := "你好" + "世界" // 字符串拼接
	print(fmt.Sprintf("%s%s", ss, ss)) // 字符串拼接

    fmt.Println(strings.Split(`C:\Users\user`, "\\")) // 字符串分割
    fmt.Println(strings.Split(`C:\Users\user`, "\\"))
	fmt.Println(strings.HasPrefix("abc", "a")) // 前缀
	fmt.Println(strings.HasSuffix("abc", "a")) // 后缀
	fmt.Println(strings.Index("abac", "b")) // 查找字符串
	fmt.Println(strings.Join([]string{"C:", "Users"}, "\\")) // string.join
	fmt.Println(len("你好世界")) // 输出utf8字节数: 12
	for i := 0; i < len("你好世界"); i++ {
		fmt.Printf("%c", "你好世界"[i]) // 输出 ä½ å¥½ä¸–ç•Œ
	}
	fmt.Println()
	var s3 []rune = []rune("你好世界") // rune是宽字符类型(内部是int32), 可以保存中文
	fmt.Println(string(s3))	// 正常输出
}
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值