Go+类型转换、if

举报
XiaoLin_Java 发表于 2022/03/27 21:00:04 2022/03/27
【摘要】 类型Go+的数据类型十分丰富 整型我们常用于整型来进行数字运算,他有几种类型:有符号整型:int8、int16、int32、int64。无符号整型:uint8、uint16、uint32、uint64。类型描述int8有符号8位整型int16有符号16位整型int32有符号32位整型int64有符号64位整型uint8无符号8位uint16无符号16位uint32无符号32位uint64无...

类型

Go+的数据类型十分丰富

整型

我们常用于整型来进行数字运算,他有几种类型:

  1. 有符号整型:int8、int16、int32、int64。
  2. 无符号整型:uint8、uint16、uint32、uint64。
类型 描述
int8 有符号8位整型
int16 有符号16位整型
int32 有符号32位整型
int64 有符号64位整型
uint8 无符号8位
uint16 无符号16位
uint32 无符号32位
uint64 无符号64位

还有一些常见的特殊整型:

  1. uint:无符号整型,32位操作系统上就是32位,64位操作系统上就是64位。
  2. int:有符号整型,32位操作系统上就是32位,64位操作系统上就是64位。
  3. uintptr:无符号整型,常用于存放一个指针。
a := 12
println(a)

字符串

字符串是我们用的最多的一种类型,我们一般使用双引号来表示这是一个字符串。

name := "hello world"
println(name)

在字符串里面有一些特殊的字符串,这就是转义符,转义符指的是有特殊含义的字符串,常见的有以下几种:

  1. \r
  2. \n
  3. \t
  4. \’
  5. \"
  6. \
转义符 含义
\r 回车
\n 换行符
\t 制表符
\’ 单引号
\" 双引号
\ 反斜杠

如果我妈需要打印双引号、单引号、或者反斜杠时,我们只需要在前面加一个反斜杠即可。

println("\\") // \

如果我们需要打印多行的话,有一种简便的方法,直接用单引号括起来即可。

column := `第一行
第二行
第三行
`
println(column )

浮点型

Go+支持两种类型的浮点型,分别时float32float64

  1. float32:32位的浮点型。
  2. float64:64位的浮点型
var num float32
num = 14.2
println(num)

布尔类型

布尔类型就是常见的真与假,用bool来标记时一个布尔类型,布尔类型的默认值为false,且布尔类型无法参加运算,一般常与if语句连用。

var flag bool
println(flag)

类型转换

类型转换指的是在日常开发中我们需要转换一些类型,将一种类型转换为另外一种类型,他的基本语法格式如下:

类型名称(变量名称)

如果我们要把一个int类型的数转为float32的话可以这样写:

float32(12)
 var sum int = 100
 var count int = 3
println("未做转化前,两数相除值为: ",sum / count) // 33
println("转化后,两数相除值为: ",float32(sum)/float32(count)) // 33.333

if条件语句

概述

我们有三种结构来控制程序的流程结构:

  1. 顺序结构:从上往下执行的代码就是顺序结构。
  2. 循环结构:满足某种条件可以重复不断地执行某种语句叫做循环结构。
  3. 选择结构:满足某种条件就执行,否则执行另外一个。

if语句

if语句就是一种选择结构,他有三种结构,对用不同的语法格式:

  1. if
  2. if …else
  3. if else if

if

if按照字面意思是如果的意思,这个是最简单的一个循环语句,他代表的意思是当条件为真的时候,就会执行接下来的代码,具体语法如下:

if 判断表达式 {
    // 条件为真的时候执行的代码语句
}

在括号体内写的是条件为真的执行语句。

if 1==1 {
    println("代码为真的")
} // 代码为真的

if…else

我们一旦需要,如果…否则…,我们会发现,上面的不够用了,我们需要一个语句控制否则,这个时候就可以使用else。他的语法格式如下。

if 条件判断语句 {
	//条件为真的时候执行
	}else {
	//条件为假的时候执行
 }

下面这段代码的意思时如果3除以2能整除,那么就打印3可以整除2,否则就打印3不可以整除2!

if 3/2 == 0 {
	println("3可以整除2")
}else{
	println("3不可以整除2!")
}

if…else…if

如果我们需要做一些复杂的判断的话,比如说成绩ABCD的判定,上面两种条件判断都无法满足,我们就可以使用if...elseif

if 条件判断语句 {
	//条件1执行的语句
	}else if 条件判断语句{
	//条件2执行的语句
 }

如果我们规定成绩,大于90为优秀,大于70为良好,小于60为不及格。

score := 85
if score > 90{
	println("优秀")
}else if score > 70 && score < 90{
	println("良好")
}else if score < 60{
	println("不及格")
}
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。