1. go变量、常量、枚举

定义变量

go语言定义变量支持类型推导 如 a := 2 a 的类型是int

var 关键字

var a int = 1

:= 只能在函数中定义变量

a := 1

集中定义变量

// 1. 在函数中使用  :=
a,b,c := 1,2,"3"

// 2. 在函数外 包内
var (
    a=1
    b=2
    c="3"
)

内置变量类型

  • 布尔型:bool
    • 只能声明为 true false
    • 不能接受其他类型的赋值,包括(0, 1),也不支持自动或强制类型转换
  • 字符串:string
  • 整型:(u)int,(u)int8,(u)int16,(u)int32,(u)int64,uintptr
    • int 类型初始化默认为0
  • 字符型: byte,rune
    • byte 对应 utf-8
    • rune 对应 unicode
  • 浮点型: float32, float64
    • 32 与64可相互转换
    • 比较大小时最好先确定比较精度, 再比较大小
  • 复数型:complex64, complex128
    • 分为实部 与虚部 , 64 类型为 float32 128 为64

欧拉公式cmplx.Pow(math.E, 1i * math.Pi) + 1

强制类型转换

var a, b int = 3, 4
    
// Sqrt 函数接收 float64 返回 float64 所以需要强制类型转换
var c int = int(math.Sqrt(float64(a*a+b*b)))
package main

import (
	"fmt"
	"strconv"
)

func main() {
	tt1 := []string{"aaaa", "vvvvv", "dddd", "eeeee", "gfgggg"}
	fmt.Println(tt1)

	// 布尔转文本
	// strconv.FormatBool(false)
	
	// 文字转布尔  true 不能有其他文本  0 false 1 true
	res, _ := strconv.ParseBool("1")
	fmt.Println(res)
	
	// 格式化 浮点型数字 会四舍五入
	value := strconv.FormatFloat(1.55, 'f', 2, 64)
	fmt.Println(value)

	// 向后追加  int 、 bool
	// strconv.AppendUint()
}

常量的定义

  • 常量的定义使用 const 关键字定义const a = 3 类型推导 a 为 int 类型

枚举的定义

普通枚举

const(
		cpp = 0
		java = 1
		python = 2
	)

自增枚举

const(
	got = iota
	ptython
	wget
)

// iota 可参与运算
const (
	a = iota * 2
	b
	c
	d
)
fmt.Println(a,b,c,d) // 0 2 4 6
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值