最新消息:XAMPP默认安装之后是很不安全的,我们只需要点击左方菜单的 "安全"选项,按照向导操作即可完成安全设置。

Go day 8 (basic types)

XAMPP下载 admin 756浏览 0评论
 basic types
go 的基本型別主要有 7 種 3 種數值型別(int、float、complex),以及 boo、string、byte、rune.而 3 種數值型別又根據不同的位元數做分類.
整數又分為帶正負號的整數,另外 int32 跟 rune 是同義的,rune 用來指該值為 Unicode :

int  int8  int16  int32  int64
無正負號的整數,而 uint8 跟 byte 是同義的,byte 用來強調該值的原始資料而不是數值 :

uint uint8 uint16 uint32 uint64 uintptr
浮點數分為 32 及 64 :

float32 float64
複數分為 64 及 128 :

complex64 complex128
在 Go 的 +、-、*、/都可用在整數、浮點數、及複數上,但只有餘數運算子(%)只能用在整數上且正負號與被除數相同.

fmt.Println(-10 % 4)  // -2
fmt.Println(-10 % -4) // -2
fmt.Println(10 % -4)  // 2
overflow
如果經過運算後位元數超過型別的範圍則會發生 overflow.
uint8 的範圍為 0~255,int8 的範圍為 -182 ~ 127.

var u uint8 = 255
fmt.Println(u, u+1, u+2) // 255 0 1
var i int8 = 127
fmt.Println(i, i+1, i+2) // 127 -128 -127
浮點數表示
浮點數通常以 Printf 的 %g 輸出,%g 會選擇適合的精確度表示,也可以透過 %e (指數)或 %f (無指數)表示.
%23.16f 表示 16 位精確度的 e 次方值,並以 23 個字元寬顯示.

package main

import (
“fmt”
)

func main() {
var c = 3.14159265358979323846264
fmt.Printf(“c : %g , %e , %23.16f ,%25.23f “, c, c, c, c)
// c : 3.141592653589793 , 3.141593e+00 ,      3.1415926535897931 ,3.14159265358979311599796
}

複數運算
複數的運算如下,(1 + 2i) * (3 + 4i) = 3 + 4i + 6i + 8(-1) = -5 + 10i,
-5 是實數透過 real() 取出,10 是實數透過 imag() 取出

package main

import (
“fmt”
)

func main() {
var c1 complex128 = complex(1, 2)
var c2 complex128 = complex(3, 4)
fmt.Println(c1 + c2) // (4+6i)
fmt.Println(c1 – c2) // (-2-2i)
var c3 = c1 * c2
fmt.Println(c3)       // (-5+10i)
fmt.Println(real(c3)) // -5
fmt.Println(imag(c3)) // 10
}

转载请注明:XAMPP中文组官网 » Go day 8 (basic types)

您必须 登录 才能发表评论!