妇女节,陪她一起欢乐! 今天继续分享Go的基础知识数据类型与运算符,这些对于一个转go的人来说没有什么难度,只需要注意一些语法上的问题。如果分享的有问题希望各位大佬可以批评指正
一、数据类型
1、布尔类型
/**
1、布尔类型(bool) true false
如果定义不赋值 bool 默认 false
*/
var isFlag bool = true
var isFlag2 bool = false
//fmt.Println(isFlag)
fmt.Printf("%T,%t\n", isFlag, isFlag) //%T 为类型 %t 值
fmt.Printf("%T,%t\n", isFlag2, isFlag2)
2、数值型
/**
2、数值型
整型 int 默认 int64 、int32 其他 无符号uint8、uint16、uint32、uint64 -->0 以上
浮点型 float float32、float64、实数/虚数complex64-->32位 complex128-->64位
byte 类似于 uint8
*/
//定义一个整型
var age int = -618
//定义一个浮点型
var money float32 = 3.1214567
fmt.Printf("%T,%d\n", age, age)
fmt.Printf("%T,%f\n", money, money)
3、字符串
/**
3、字符串
php 中 char varchar
Go 中 string
*/
var str string
str = "xiaoming"
fmt.Printf("%T,%s\n", str, str)
v1 := "A"
v2 := 'A' // 单引号 是字符 对应的是字符表
/**
GBK 中国编码表
Unicode 世界编码表
*/
fmt.Printf("%T,%s\n", v1, v1)
fmt.Printf("%T,%d\n", v2, v2) //int32 65 对应的ASCll码
//字符串连接 +
fmt.Println("你好" + "世界" + "sdasd")
//转义字符 \n 换行 \t 制表符table
fmt.Println("转移打\"印字符好么 ")
4、数据类型转换
/**
数据类型转换
由于go语言不存在隐士类型转换,因此所有的类型转换都必须显式的声明
格式: valueofTypeB = typeB(valueA)
转后的变量 := 要转换得类型(要转换得变量)
整型 不能转成bool
数据类型: 内存空间分配的大小是不同的
*/
a := 3 //int
b := 5.0 //float64
//将a int 类型转换成b的float64类型
c := float64(a)
fmt.Printf("%T\n%T\n%T\n", a, b, c)
二、运算符
1、算术运算符
/**
1、算术运算符
+ 相加
- 相减
* 相乘
/ 相除
% 求余/取模
++ 自增
-- 自减
*/
var a int = 10
var b int = 3
fmt.Println("相加====》a+b=", a+b)
fmt.Println("相减====》a-b=", a-b)
fmt.Println("相乘====》a*b=", a*b)
fmt.Println("相除====》a/b=", a/b)
fmt.Println("取模====》a%b=", a%b)
a++ //a =a+1
fmt.Println("自增====》a++ =", a)
a-- //a = a-1
fmt.Println("自减====》a-- =", a)
2、关系运算符
/**
2、关系运算符
== 检查两个值是否相等 相等返回 true 不相等返回false
!= 检查两个值是否不相等 不相等返回true 相等返回false
> 大于 是返回true 否返回 false
< 小于 是返回true 否返回 false
>= 大于等于 是返回true 否返回 false
<= 小于等于 是返回true 否返回 false
返回bool 值
*/
var a int = 21
var b int = 10
fmt.Println(a == b) //false
fmt.Println(a != b) //true
fmt.Println(a > b) //true
fmt.Println(a < b) //false
fmt.Println(a >= b) //false
fmt.Println(a <= b) //false
3、逻辑运算符
/**
3、逻辑运算符 或且非
&& and运算符 如果两边都是true 则是true 否则false
|| or 运算符 如果两边操作只有一个true 则条件为true 否则flase
! not 运算符 如果条件为true则逻辑not条件false否则true
*/
var a bool = true
var b bool = false
var c bool = true
if a && b {
fmt.Println("a&&b 都为真")
} else {
fmt.Println("a&&b 有真有假")
}
if a && c {
fmt.Println("a&&c 都为真")
} else {
fmt.Println("a&&c 有真有假")
}
if a || b {
fmt.Println("a||b 都为真")
} else {
fmt.Println("a||b 有真有假")
}
if a || c {
fmt.Println("a||c 都为真")
} else {
fmt.Println("a||c 有真有假")
}
if !a {
fmt.Println("a 为假")
} else {
fmt.Println("a 为真")
}
if !b {
fmt.Println("b 为假")
} else {
fmt.Println(" b为真")
}
if !c {
fmt.Println("c 为假")
} else {
fmt.Println("c为真")
}
4、赋值运算符
赋值运算 就不举例子了 ,感兴趣的可以试一试
/**
赋值运算
=、+=、-=、*=
*/
对于基础知识我们要耐下性子去理解,去实践,基础不牢地动山摇!!!!!
夯实基础,是重要滴!!动手实践 是更重要滴!!!!
今天就分享这么多~~~~~~