0
点赞
收藏
分享

微信扫一扫

第二章、go语言基础数据类型,02_基础数据类型2

Mezereon 2022-03-23 阅读 53
gogolang

float,bool,byte,string,复数类型,格式化输出,变量的输入,类型转换,类型别名type

源代码

package main

import "fmt"

func main() {
	//1、bool类型
	//变量声明,没有初始化,默认初始值为false
	var a0 bool
	fmt.Println("a0 = ", a0)
	a0 = true
	fmt.Println("a0 = ", a0)
	//自动推导类型
	var b = false
	fmt.Println("b = ", b)
	c := false
	fmt.Println("c = ", c)

	//2、float类型
	var f1 float32
	f1 = 3.14
	fmt.Println("f1 = ", f1)
	//自动推导类型
	f2 := 3.14
	fmt.Printf("f2 type is %T", f2) //f2 type is float64

	//3、字符类型byte
	//往往都只有一个字符,转义字符除外'\n'
	var ch byte //声明字符类型
	ch = 97
	fmt.Println("ch = ", ch)
	//格式化输出,%c以字符方式打印,%d以整型方式打印
	fmt.Printf("ch = %c,ch = %d\n", ch, ch)
	ch = 'a'
	fmt.Printf("ch = %c,ch = %d\n", ch, ch)

	//大小写转换,相差32,小写大
	fmt.Printf("大写:%d,小写%d\n", 'A', 'a')
	fmt.Printf("大写转小写:%c\n", 'A'+32)
	fmt.Printf("小写转大写:%c\n", 'a'-32)

	//以反斜杠\开头的字符是转义字符,'\n'代表换行
	fmt.Printf("hello go%c", '\n')
	fmt.Printf("hello cpp\n")

	//4、字符串string
	//字符串都隐藏了一个结束符'\0'
	var str1 string
	str1 = "abc"
	fmt.Println("str1 = ", str1)
	//自动推导类型
	str2 := "mike"
	fmt.Printf("str2 type is %T\n", str2)
	fmt.Println("len(str2) = ", len(str2))

	//只操作字符串的某个字符
	fmt.Printf("str2[0] = %c,str2[1] = %c.\n", str2[0], str2[1])

	//5、复数类型
	var t complex128
	t = 2.2 + 3.14i
	fmt.Println("t = ", t)
	//自动推导类型
	t2 := 5.1 + 6.23i
	fmt.Printf("t2 type is %T\n", t2)
	//分别打印实部和虚部
	fmt.Println("real(t2) = ", real(t2), "imag(t2) = ", imag(t2))

	//6、格式化输出
	h := 10
	i := "abc"
	j := 'a'
	k := 3.14
	//%T操作变量所属类型
	fmt.Printf("h is %T,i is =%T,j is %T,k is %T\n", h, i, j, k)

	//%d整型
	//%s字符串
	//%c字符
	//%f浮点型
	fmt.Printf("h = %d,i = %s,j = %c,k = %f\n", h, i, j, k)
	//%v自动匹配格式输出
	fmt.Printf("h = %v,i = %v,j = %v,k = %v\n", h, i, j, k)

	//7、变量的输入
	var q int
	fmt.Printf("请输入变量q:")
	//阻塞等待用户的输入
	// fmt.Scanf("%d", &q)
	fmt.Scan(&q)
	fmt.Printf("q = %d\n", q)

	//8、类型转换
	//bool和int不能相互转换,这种叫不兼容类型
	//byte和int支持转换
	var ch1 byte
	ch1 = 'a'
	var u int
	u = int(ch1) //类型转换
	fmt.Println("u = ", u)

	//9、类型别名type
	type bigint int64
	var w bigint
	fmt.Printf("w type is %T\n", w)
	type (
		long int64
		char byte
	)
	var x long = 11
	var y char = 'a'
	fmt.Printf("x = %d,y = %c\n", x, y)
}

打印输出

a0 =  false
a0 =  true
b =  false
c =  false
f1 =  3.14
f2 type is float64ch =  97
ch = a,ch = 97
ch = a,ch = 97
大写:65,小写97
大写转小写:a
小写转大写:A
hello go
hello cpp
str1 =  abc
str2 type is string
len(str2) =  4
str2[0] = m,str2[1] = i.
t =  (2.2+3.14i)
t2 type is complex128
real(t2) =  5.1 imag(t2) =  6.23
h is int,i is =string,j is int32,k is float64
h = 10,i = abc,j = a,k = 3.140000
h = 10,i = abc,j = 97,k = 3.14
请输入变量q:666
q = 666
u =  97
w type is main.bigint
x = 11,y = a
举报

相关推荐

0 条评论