1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115
| package main
import ( "fmt" "strconv" "time" )
func testVar() { var num0 int fmt.Println(num0)
var numString = "123456" fmt.Println("num_1: ", numString)
var num1 int = 12 fmt.Printf("type of num_1: %T\n", num1)
num2 := 3.14 fmt.Printf("num_2 = %f, type is num_2: %T\n", num2, num2)
var xx, yy = 1, 2 fmt.Printf("xx = %d, yy = %d\n", xx, yy) var kk, ll = 100, "str" fmt.Printf("kk = %d, ll = %s\n", kk, ll)
var ( var1 int = 100 var2 bool = true var3 float32 = 3.14 ) fmt.Println("var1 =", var1, "var2 =", var2, "var3 =", var3) }
func testConst() { const length int = 10 fmt.Println(length)
const ( BEIJING = iota SHANGHAI SHENZHEN GUANGZHOU )
const ( NUM_1 = iota * 10 NUM_2 NUM_3 NUM_4 )
const ( a, b = iota + 1, iota + 2 c, d e, f g, h = iota * 2, iota * 3 i, k ) }
func testMultipleReturn(a int, b int) (int, int) { return a + b, a * b }
func testReturnWithName(a int, b int) (sum int, mul int) { fmt.Println("before assign, sum= ", sum, " mul= ", mul) sum = a + b mul = a * b return }
func testReturnWithNameAndSameType(a int, b int) (sum, mul int, sumStr string) { sum = a + b mul = a * b sumStr = strconv.Itoa(sum) return }
func main() { fmt.Println("test go") fmt.Println("wait for 1 second") time.Sleep(time.Second * 1) fmt.Println("1 second wait finished")
testVar() testConst()
var a = 10 var b = 20 var sum1, mul1 int = testMultipleReturn(a, b) fmt.Println("sum1 = ", sum1, " mul1 = ", mul1) sum1, mul1 = testReturnWithName(a, b) fmt.Println("sum1 = ", sum1, "mul1 = ", mul1) sum1, mul1, sumStr := testReturnWithNameAndSameType(a, b) fmt.Println("sum1 = ", sum1, "mul1 = ", mul1, "sum_str = ", sumStr) }
|