golang变量及数据类型
首页->学习资料->编程语言->golang语言教程 关键词: 发布时间:2020-09-07 14:35:54 浏览次数:2243
package main

import "fmt"

/**
Go语言的基本类型有:
布尔:bool
字符串:string
有符号整数:int(取决于计算是32位还是64位)、int8、int16、int32、int64
无符号整数类型:uint(取决于计算是32位还是64位)、uint8、uint16、uint32、uint64、uintptr(没有指定具体的 bit 大小但是足以容纳指针)
byte // uint8 的别名(代表了 ASCII 码的一个字符)
rune // int32 的别名 代表一个 Unicode 码(代表一个 UTF-8 字符,当需要处理中文、日文或者其他复合字符时)
float32(大约范围:1.4e-45到3.4e38)、float64(大约范围:4.9e-324到1.8e308)
当一个变量被声明之后,系统自动赋予它该类型的零值:int 为 0,float 为 0.0,bool 为 false,string 为空字符串,指针为 nil 等。所有的内存在 Go 中都是经过初始化的。
*/

//声明全局变量
var web string = "http://www.hu-rong.com"

//main里面声明的变量中局部变量,只在main内起作用
func main() {
   //打印全局变量
   fmt.Println("全局变量web=" + web)

   //声明变量的一般形式是使用 var 关键字:变量的命名规则遵循骆驼命名法
   var web string
   web = "www.hu-rong.com"
   fmt.Println("局部变量web=" + web)

   //变量批量声明变量
   var (
      age  int    = 37
      name string = "hurry"
   )
   fmt.Println("姓名:" + name)
   fmt.Print("年龄:")
   fmt.Print(age)
   fmt.Println()

        //也可以这样声明,根据值判断类型(类型推导)
        sex, height := "男", 170
        fmt.Printf("性别:%s,身高:%d\n", sex, height)

        //也可以这样声明
        city := "广州"
        fmt.Println(city);

   //变量的赋值
   fmt.Println("---------------变量赋值-----------------")
   var a int = 100
   var b int = 200
   a, b = b, a //交换a,b
   fmt.Printf("a=%d,b=%d\n", a, b)

   //匿名变量:用下划线表示
   fmt.Println("---------------匿名变量-----------------")
   c, _ := GetData() //只要第一个返回值,如果这样会报错c:=GetData(),因为GetData要返回两个int
   _, d := GetData() //只要第二个返回值
   fmt.Println(c, d)

   //一个 float32 类型的浮点数可以提供大约 6 个十进制数的精度,而 float64 则可以提供约 15 个十进制数的精度,
   // 通常应该优先使用 float64 类型,因为 float32 类型的累计计算误差很容易扩散,并且 float32 能精确表示的正整数并不是很大
   fmt.Println("---------------浮点数-----------------")
   var f float32 = 16777216 // 1 << 24
   fmt.Printf("f+1=%.2f\n",f+1)//.2f表示保留2位小数
   fmt.Println(f == f+1)    // "true"
   var f1 float64=16777216
   fmt.Printf("f1+1=%.2f\n",f1+1)
   fmt.Println(f1 == f1+1)    // "false"

   fmt.Println("---------------布尔型-----------------")
   fmt.Println(a==b)//false
   fmt.Println(c==d)//false

	fmt.Println("---------------字符串:这就是一个字符串-----------------")
	var s string=`定义多行字符串:用反引号,键盘上 1 键左边的键
第2行
第3行\n这里的\n不会被转义`
    s+="\n第4行:字符串拼接如果有多行要换行时+号要放在上一行"+
    "\n第5行:再来一行\n"
	fmt.Println(s)

   fmt.Println("---------------字符-----------------")
   var A int = '\u0041'
   var aa int = '\u0097'
   fmt.Printf("%d - %d\n", A, aa) // integer 65 - 151
   fmt.Printf("%c - %c\n", A, aa) // character A -
   fmt.Printf("%X - %X\n", A, aa) // UTF-8 bytes 41 - 97
   fmt.Printf("%U - %U", A, aa)   // UTF-8 code point U+0041 - U+0097

}
func GetData() (int, int) {
   return 300, 400
}



运行结果:

全局变量web=http://www.hu-rong.com

局部变量web=www.hu-rong.com

姓名:hurry

年龄:37

性别:男,身高:170

广州

---------------变量赋值-----------------

a=200,b=100

---------------匿名变量-----------------

300 400

---------------浮点数-----------------

f+1=16777216.00

true

f1+1=16777217.00

false

---------------布尔型-----------------

false

false

---------------字符串:这就是一个字符串-----------------

定义多行字符串:用反引号,键盘上 1 键左边的键

第2行

第3行\n这里的\n不会被转义

第4行:字符串拼接如果有多行要换行时+号要放在上一行

第5行:再来一行

---------------字符-----------------

65 - 151

A - —

41 - 97

U+0041 - U+0097


赞:(0)
踩:(0)
相关文章
golang语言简介
golang开发工具-golang安装及配置(
golang语言的特性
golang语言适合做什么
golang语言和其它编程语言的对比
golang语言标准库
golang语言编译过程
第一个golang程序,编译及运行
热门文章
win7中将文件拷贝到虚拟机linux下
phpexcel设置行高及列宽,背景颜色,
rabbitmq无法启动
intellij idea不显示git push按钮
php7中使用mongodb的aggregate进行
centos7.4 64位下swoole安装及配置
laravel页面静态化的方法
navicate连接mycat报1184错误
单点登录sso原理及php实现方式及de
devops-jenkins容器为pending状态
好评文章
phpexcel设置行高及列宽,背景颜色,
php7中使用mongodb的aggregate进行
intellij idea打开文件所在文件夹
windows下使用MongoDB Compass Com
win7中将文件拷贝到虚拟机linux下
laravel 中悲观锁 & 乐观锁的使用
单点登录sso原理及php实现方式及de
navicate连接mycat报1184错误
rabbitmq无法启动
laravel整合dingo/api方法步骤:jwt
标签
rabbitmq mysql备份 elasticsearch golang swoole
我的项目
【github】www.github.com/hurong241
【码云】gitee.com/hu_rong/projects
【docker hub】hub.docker.com/repositories/hurong241
【packagist】packagist.org/users/hurong241/packages
站点信息
建站时间:2011年
文章数:607篇
浏览数:944440
粤ICP备18028092号-1  微信:hurong241