二、GoLang输出HelloWorld、基本数据类型、变量常量定义、基本类型转换

这篇具有很好参考价值的文章主要介绍了二、GoLang输出HelloWorld、基本数据类型、变量常量定义、基本类型转换。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、输入Hello World

go语言中,想要输出内容到控制台,package必须是main,包括方法名也必须是main,
go语言输出的语法是 fmt 库。

package main

import "fmt"

func main() {
	// go语言中 输出内容 使用的库是 fmt库
	fmt.Println("Hello world")
}

二、变量的基本类型

Go语言的基本类型有:

  1. boolean:布尔类型 true / false

  2. string :字符串类型

  3. 数值型:

    • int8:有符号8位整型(-128到127)长度
    • int16:有符号16位整型(-32768到32767)长度
    • int32:有符号32位整型(-2147483648到2147483647)长度
    • int64:有符号64位整型(-9223372036854775808到9223372036854775807)长度
    • uint8:无符号8位整型(0到255)
    • uint16:无符号16位整型(0到65535)
    • uint32:无符号32位整型(0到4294967295)
    • uint64:无符号64位整型(0到18446744073709551615)
  4. 浮点型:

    • float32:32位浮点型数字
    • float64:64位浮点型数字
  5. byte:等同于 uint8

    主要适用于存储字符,存储的是字符的 ASCII码

  6. rune:等同于 int32

    也是用于存储字符的,存储的是字符的 ASCII码,但是比byte长度大,比如中文使用byte可能会导致存储不下,这个时候可以使用rune类型

当一个变量被声明之后,系统自动赋予它该类型的零值:int 为 0,float 为 0.0,bool 为 false,string 为空字符串,指针为 nil 等。所有的内存在 Go 中都是经过初始化的。

package main

import "fmt"

/*
*
go语言中基本数据类型分为:

	bool、字符和string、数值类型(整数:int、浮点数: float、byte字节 其实也是int、rune类型其实也是 int )
*/
func main() {

	// 整数
	var number1 int8
	var number2 int16
	var number3 int32
	var number4 int64

	var number5 uint8
	var number6 uint16
	var number7 uint32
	var number8 uint64

	//这个int是个 动态类型 如果操作类型是 64 那么这里就是 int64 如果操作系统是 32 那么就是 int32
	//同意的道理 uint 也是
	var number9 int

	//浮点数
	var number10 float32
	var number11 float64

	fmt.Println(number1)
	fmt.Println(number2)
	fmt.Println(number3)
	fmt.Println(number4)
	fmt.Println(number5)
	fmt.Println(number6)
	fmt.Println(number7)
	fmt.Println(number8)
	fmt.Println(number9)
	fmt.Println(number10)
	fmt.Println(number11)

	// -------------------- byte 类型 就是 uint8
	// 主要适用于存储字符,存储的是字符的 ASCII码
	var number12 byte
	number12 = 'a'
	fmt.Println(number12)
	// -------------------- rune 类型 就是 int32
	// 也是用户存储字符的但是比byte长度大,比如中文使用byte可能会导致存储不下,这个时候可以使用rune类型
	var number13 rune
	number13 = '酿'
	fmt.Println(number13)

	// ------------------------------ 字符串类型
	var name string
	name = "这是一个字符串类型"
	fmt.Println(name)
}

三、定义变量

Go语言中可以不指定变量的类型,变量的类型可以让编译器来自动决定类型。

1.函数内变量的定义

go语言中定义语法的格式是,
var修饰,变量的名称在类型的前面,和java不同。

package main

import "fmt"

// go语言中 声明方法 使用 func
func main() {

	// 在 go语言中  声明 变量用 var
	// 名字在前面 类型在后面
	// 在 go语言中 如果声明了变量 没有给赋值的话 默认的值 就是 空串和0
	// 比如在 java中 如果不给值 那么就是 null go语言中 都是有默认值的
	// go语言中 如果定义了变量 不使用的话 会报错
	var name1 string
	var age1 int
	fmt.Println("当前人的名称是", name1, "当前人的年龄是", age1)

	// 定义变量 并且给变量 赋值
	var name string
	var age int
	name = "zhangsan"
	age = 18
	//重新赋值
	age = 19
	// 直接声明变量 然后给 变量赋值
	var sex = 1

	fmt.Println("当前人的名字叫 ", name, "他的年龄是", age, "性别是", sex)

	// 第二种定义变量的格式
	var name2, age2, sex2, flage2 = "zhangsan", 18, 1, true
	//对变量 重新赋值
	name2 = "李四"
	fmt.Println("第二种定义变量的名称是:", name2, "年龄是:", age2, "性别是:", sex2, "状态是:", flage2)

	// 第三种定义变量的格式
	name3 := "wangwu"
	age3 := 20

	//对变量重新赋值
	name3 = "赵六"

	fmt.Println("第三种定义变量的名称是:", name3, "年龄是:", age3)

	//连续对变量进行定义
	name4, age4, sex4 := "李七", 21, 1

	fmt.Println("第四种定义变量的名称是:"+name4, age4, sex4)

	// ---------------------------------------

}

2.全局变量的定义

package main

import "fmt"

// 定义全局变量 任何一个函数里面都能使用
// 第一种写法
var name5 = "libai"
var age5 = 100

// 第二种写法
var (
	name6 = "chengyaojin"
	age6  = 100
)

// go语言中 声明方法 使用 func
func main() {
	fmt.Println(name5, age5)

	fmt.Println(name6, age6)
}

四、定义常量

常量一旦被定义,不能被修改。

package main

import "fmt"

func main() {

	/**
		1.常量类型只能定义 bool、数值类型(整数,浮点数,复数)、字符串
		2.变量定义了不使用会报错,常量定义了可以不使用不报错
		3.常量,定义的时候就指定值,不能修改
	*/
	// 显式定义常量值: 确定常量的类型
	const success1 int = 200
	// 隐式定义常量
	const success2 = 200

	// 常量定义 第一种方式
	const (
		ERROR1 = 1
		ERROR2 = 2
		ERROR3 = 3
	)
	// 第二种方式
	const ERROR4 = 4
	const ERROR5 = 5

	// 第三种方式
	// 如果定义常量时 没有给常量定义值 那么这个常量的值 将会使用 上个常量的值
	const (
		ERROR6 = 6
		ERROR61
		ERROR7 = 7
		ERROR71
	)


	const (
		code1 = "success"
		code2 = true
		code3 = 1
	)

	fmt.Println(ERROR1, ERROR2, ERROR3)

	//常量 只能被初始化一次 再次初始化的话 编译报错
	//ERROR4 = 10

	fmt.Println(ERROR4, ERROR5)

	fmt.Println(ERROR6, ERROR61, ERROR7, ERROR71)
}

4.1常量 iota 的使用

假如我们针对用户表中,用户状态,需要用一个枚举类来表示他的状态,那么就go语言中,如何定义枚举呢?

package main

import "fmt"

func main() {

	/**
	1.iota是一个自增的数字类型
	2.如果中断了iota 那么必须 显式的恢复,后续会继续递增
	3.每次出现const的时候,iota的初始化都是 0

	*/
	// 在go语言中对状态进行枚举表示
	// 未使用:0
	// 正常: 1
	// 已封禁:2
	// 账号异常:3
	// 停用:4
	const (
		NOTUSE = iota
		NORMAL
		PROHIBITED
		ABNORMAL
		DEACTIVATE
	)

	const (
		state = iota
		state1
		state2 = "未使用"
		state3
		state4 = iota
	)

	// 假如我们的错误码 从 1000开始
	const (
		ERROR = 1000 + iota
		ERROR1
		ERROR2
		ERROR3
		ERROR4
	)

	fmt.Println(NOTUSE, NORMAL, PROHIBITED, ABNORMAL, DEACTIVATE)

	fmt.Println(state, state1, state2, state3, state4)

	fmt.Println(ERROR, ERROR1, ERROR2, ERROR3, ERROR4)
}

五、匿名变量

上面我们说过了,在go中如果变量不被使用的话,那么编译会报错。但是确实有些场景我们用不到这个变量。这个怎么处理?
使用匿名变量来解决。文章来源地址https://www.toymoban.com/news/detail-700699.html

package main

import "fmt"

// 定义一个函数 返回两个返回值 
// 当前函数 返回两个返回值 类型是 int 和 bool
func anonymous() (int, bool) {
	return 0, true
}

func main() {

	//定义匿名变量 用 "_" 来表示 匿名变量
	var _ int
	//将第一个返回值用 匿名变量来接口
	_, ok := anonymous()
	if ok {
		fmt.Println("方法返回的是true")
	}

}

六、数据类型的转换

package main

import (
	"fmt"
	strconv "strconv"
)

/*
*

	基本数据类型的转换
		1.数值之间相互转换
		1.int、float、bool 转string
		2.string 转 int、float、bool
*/
func main() {

	var age int8 = 12
	//将age转成 uint8
	var age1 = uint8(age)
	//将age转成 int64
	age2 := int64(age)
	fmt.Println(age1)
	fmt.Println(age2)

	// -------------------------------- int转成 float
	var number = float64(age)
	fmt.Println(number)

	//----------------------------------- int float 转字符串
	// Itoa 函数必须转成 int类型
	var number1string string
	number1 := int(age)
	number1string = strconv.Itoa(number1)
	fmt.Println("这是字符串类型:" + number1string)

	var numberFloatString string
	var numberFloat float64
	numberFloat = 266.141569
	//转成string
	//第1个参数是 要转换的类型
	//第2个参数是 要转换类型显示成什么样 具体format格式 可以点进去源码看
	//第3个参数 就写成 -1 就好了
	//第4个参数 就写成 64就好了
	numberFloatString = strconv.FormatFloat(numberFloat, 'f', -1, 64)
	fmt.Println("float64转成string" + numberFloatString)
	//----------------------------------- bool 转字符串
	var flage = true
	var flageString string
	flageString = strconv.FormatBool(flage)
	fmt.Println("将bool类型转成string类型:" + flageString)

	//-------------------------------------------------------- 字符串转int float bool
	// 1.string 转 int
	var number11string = "100"
	var number11 int
	number11, err := strconv.Atoi(number11string)
	if err != nil {
		return
	}
	fmt.Println("string转成int类型", number11)

	// 2.string 转 float
	var floatstring = "3.14156"
	var float1 float64
	//第2个参数 就写成64
	float1, err = strconv.ParseFloat(floatstring, 64)
	if err != nil {
		return
	}
	fmt.Println("string类型转成float类型", float1)

	//将string转成bool
	var bolstring = "false"
	var bool1 bool
	bool1, err = strconv.ParseBool(bolstring)
	if err != nil {
		return
	}
	fmt.Println("string类型转成bool类型", bool1)
}


到了这里,关于二、GoLang输出HelloWorld、基本数据类型、变量常量定义、基本类型转换的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【Java探索之旅】数据类型与变量,字面常量,整型变量

    🎥 屿小夏 : 个人主页 🔥个人专栏 : Java入门到精通 🌄 莫道桑榆晚,为霞尚满天! 在Java编程中,理解常量、数据类型以及变量是构建程序逻辑的基础。本文将深入介绍Java中的字面常量、数据类型和整型变量,帮助读者掌握这些基础概念,为编写高效的Java程序打下坚实基

    2024年03月11日
    浏览(36)
  • 【C】C语言数据类型、常量变量的介绍

    下图为C语言常见的数据类型: (浮点数就是我们常见的小数,字符类型要用‘’引起来,在C语言中字符串类型要用字符数组来表示,以后给大家慢慢介绍) 在C语言中没种数据类型所占的空间大小是不一样的,在这里给大家介绍一个库函数: sizeof ,它可以计算每种数据类型

    2024年02月09日
    浏览(50)
  • 【go语言】2.1.1 变量,常量和数据类型

    Go 语言中,变量是存储数据的基本单位,常量则是固定不变的数据。每个变量和常量都有其对应的数据类型。 在 Go 语言中,你可以使用  var  来声明一个变量: 上面的代码声明了一个名为  name  的变量,它的类型是  string 。你也可以在声明变量的同时给它赋值: 或

    2024年02月15日
    浏览(41)
  • 初级Java必看的数据类型与常量变量

    目录 一、Java的数据类型 1、数据类型细致划分 2、数据类型他是做什么的? 3、怎么用数据类型? 二、Java的常量与变量 Java常量 常量代表程序在运行过程中,不可再次改变的值; Java变量 知识总结         我们所学的Java,最基础的应该就是数据类型了,应该大部分计算机

    2024年01月19日
    浏览(38)
  • SCL语言的数据类型和常量与变量声明方式

    SCL语言的数据类型主要包含以下几类: 1. 基本数据类型: - BOOL:布尔类型,取值为TRUE或FALSE。 - INT:整数类型,取值范围为-32768~32767(16位PLC)或-2147483648~2147483647(32位PLC)。 - UINT:无符号整数类型,取值范围为0~65535(16位PLC)或0~4294967295(32位PLC)。 - REAL:单精度浮点数

    2024年02月09日
    浏览(39)
  • 【C语言基础考研向】02 数据类型-常量-变量

    文章目录: 一.数据类型 二.常量 三.变量 四. 整型数据 五.浮点型数据 六.字符型数据 七.字符串常量 数据类型分为四大类: 基本类型 整型 浮点 字符型 构造类型 数组 结构体 指针类型 空类型 常量是指在程序运行过程中,其值不发生变化的量。常量又可分为整型、实型(也称浮

    2024年01月16日
    浏览(38)
  • Verilog数据类型/常量/变量[学习笔记day3]

    1 数据类型 数据类型是用来表示数字电路中的 数据存储 和 传递单元 。 Verilog HDL中共有19种数据类型,其中 最基本的有4种 : 常:integer型 parameter型 变:reg型 wire型 其他:large, medium, scalared, small, time, tri, tri0, tri1, triand, trior, trireg, vectored, wand, wor等。 2 常量 在程序运行过程中

    2024年02月05日
    浏览(33)
  • FPGA设计Verilog基础之数据类型的作用和特点、常量和变量的代码示例详解

    注意:后续技术分享,第一时间更新,以及更多更及时的技术资讯和学习技术资料 ,将在公众号 CTO Plus 发布,请关注公众号: CTO Plus 在Verilog中,有多种数据类型可供使用,包括位向量类型、整数类型、实数类型、布尔型、时间类型和字符串类型等。下面详细介绍Verilog的所

    2024年02月03日
    浏览(28)
  • 编程笔记 Golang基础 010 常量和变量

    在 Go 语言中,常量(Constant)是一个固定的值,在程序运行期间不可被修改。它们通常用来表示那些在整个程序执行过程中不会变化的数值或其他类型的数据。在 Go 语言中,变量是用来存储数据的容器。 在 Go 语言中,常量(Constant)是一个固定的值,在程序运行期间不可被

    2024年02月21日
    浏览(37)
  • C语言的数据类型(整型、字符型,浮点型等详细介绍、ASCLL表以及常量、变量的详细介绍)

    C语言的数据类型基本介绍         在C语言中,数据类型可以分为:基本数据类型(整型、浮点型/实型、字符型)、构造数据类型(数组、指针、结构体、共用体、枚举)以及空类型(万能类型void)。常用的有:整形(int)、字符型(char)、短整型(short)、长整型(

    2024年02月07日
    浏览(37)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包