第01天(基本类型、流程控制)_03
2019-11-22 本文已影响0人
lucas777
13_字符串类型.go
package main //必须有一个main包
import "fmt"
func main() {
var str1 string //声明变量
str1 = "abc"
fmt.Println("strl = ", str1)
//自动推导类型
str2 := "mike"
fmt.Printf("str2 类型是 %T\n", str2)
//内建函数,len()可以测字符串的长度,有多少个字符
fmt.Println("len(str2) = ", len(str2))
}
14_字符和字符串的区别.go
package main //必须有一个main包
import "fmt"
func main() {
var ch byte
var str string
//字符
//1、单引号
//2、字符,往往都只有一个字符,转义字符除外'\n'
ch = 'a'
fmt.Println("ch =", ch)
//字符串
//1、双引号
//2、字符串有1个或多个字符组成
//3、字符串都是隐藏了一个结束符,'\0'
str = "a" // 由'a'和'\0'组成了一个字符串
fmt.Println("str = ", str)
str = "hello go"
//只想操作字符串的某个字符,从0开始操作
fmt.Printf("str[0] = %c, str[1] = %c\n", str[0], str[1])
}
15_复数类型.go
package main //必须有一个main包
import "fmt"
func main() {
var t complex128 //声明
t = 2.1 + 3.14i //赋值
fmt.Println("t = ", t)
//自动推导类型
t2 := 3.3 + 4.4i
fmt.Printf("t2 type is %T\n", t2)
//通过内建函数,取实部和虚部
fmt.Println("real(t2) = ", real(t2), ", imag(t2) = ", imag(t2))
}
16_格式化输出.go
package main //必须有一个main包
import "fmt"
func main() {
a := 10
b := "abc"
c := 'a'
d := 3.14
//%T操作变量所属类型
fmt.Printf("%T, %T, %T, %T\n", a, b, c, d)
//%d 整型格式
//%s 字符串格式
//%c 字符个数
//%f 浮点型个数
fmt.Printf("a = %d, b = %s, c = %c, d = %f\n", a, b, c, d)
//%v自动匹配格式输出
fmt.Printf("a = %v, b = %v, c = %v, d = %v\n", a, b, c, d)
}
17_输入的使用.go
package main //必须有一个main包
import "fmt"
func main() {
var a int //声明变量
fmt.Printf("请输入变量a: ")
//阻塞等待用户的输入
//fmt.Scanf("%d", &a) //别忘了&
fmt.Scan(&a)
fmt.Println("a = ", a)
}
18_类型转换.go
package main //必须有一个main包
import "fmt"
func main() {
//这种不能转换的类型,叫不兼容类型
var flag bool
flag = true
fmt.Printf("flag = %t\n", flag)
//bool类型不能转换为int
//fmt.Printf("flag = %d\n", int(flag))
//0就是假,非0就是真
//整型也不能转换为bool
//flag = bool(1)
var ch byte
ch = 'a' //字符类型本质上就是整型
var t int
t = int(ch) //类型转换,把ch的值取出来后,转成int再给t赋值
fmt.Println("t = ", t)
}