| @@ -0,0 +1,36 @@ | |||
| package main | |||
| import "fmt" | |||
| func arrays() { | |||
| var a [5]int | |||
| fmt.Println("emp: ", a) | |||
| a[4] = 100 | |||
| fmt.Println("set: ", a) | |||
| fmt.Println("get: ", a[4]) | |||
| fmt.Println("len: ", len(a)) | |||
| b := [5]int{1, 2, 3, 4, 5} | |||
| fmt.Println("dcl: ", b) | |||
| b = [...]int{1, 2, 3, 4, 5} | |||
| fmt.Println("dcl: ", b) | |||
| b = [...]int{100, 3: 400, 500} | |||
| fmt.Println("idx: ", b) | |||
| var twoD [2][3]int | |||
| for i := 0; i < 2; i++ { | |||
| for j := 0; j < 3; j++ { | |||
| twoD[i][j] = i + j | |||
| } | |||
| } | |||
| fmt.Println("2d: ", twoD) | |||
| twoD = [2][3]int{ | |||
| {1, 2, 3}, | |||
| {1, 2, 3}, | |||
| } | |||
| fmt.Println("2d: ", twoD) | |||
| } | |||
| @@ -0,0 +1,21 @@ | |||
| package main | |||
| import ( | |||
| "fmt" | |||
| "math" | |||
| ) | |||
| const s string = "constant" | |||
| func consts() { | |||
| fmt.Println(s) | |||
| const n = 500000000 | |||
| const d = 3e20 / n | |||
| fmt.Println(d) | |||
| fmt.Println(int64(d)) | |||
| fmt.Println(math.Sin(n)) | |||
| } | |||
| @@ -0,0 +1,31 @@ | |||
| package main | |||
| import "fmt" | |||
| func forloop() { | |||
| i := 1 | |||
| for i <= 3 { | |||
| fmt.Println(i) | |||
| i = i + 1 | |||
| } | |||
| for j := 0; j < 3; j++ { | |||
| fmt.Println(j) | |||
| } | |||
| for i := range 3 { | |||
| fmt.Println("range", i) | |||
| } | |||
| for { | |||
| fmt.Println("loop") | |||
| break | |||
| } | |||
| for n := range 6 { | |||
| if n%2 == 0 { | |||
| continue | |||
| } | |||
| fmt.Println(n) | |||
| } | |||
| } | |||
| @@ -0,0 +1,3 @@ | |||
| module gobyexample | |||
| go 1.22.4 | |||
| @@ -0,0 +1,7 @@ | |||
| package main | |||
| import "fmt" | |||
| func helloworld() { | |||
| fmt.Println("Hello, world!") | |||
| } | |||
| @@ -0,0 +1,27 @@ | |||
| package main | |||
| import "fmt" | |||
| func ifelse() { | |||
| if 7%2 == 0 { | |||
| fmt.Println("7 is even") | |||
| } else { | |||
| fmt.Println("7 is odd") | |||
| } | |||
| if 8%4 == 0 { | |||
| fmt.Println("8 is divisible by 4") | |||
| } | |||
| if 8%2 == 0 || 7%2 == 0 { | |||
| fmt.Println("either 8 or 7 is even") | |||
| } | |||
| if num := 9; num < 0 { | |||
| fmt.Println(num, "is negative") | |||
| } else if num < 10 { | |||
| fmt.Println(num, "has one digit") | |||
| } else { | |||
| fmt.Println(num, "has multiple digits") | |||
| } | |||
| } | |||
| @@ -0,0 +1,5 @@ | |||
| package main | |||
| func main() { | |||
| // arrays() | |||
| } | |||
| @@ -0,0 +1,36 @@ | |||
| package main | |||
| import ( | |||
| "fmt" | |||
| ) | |||
| func slicefn() { | |||
| var s []string | |||
| fmt.Println("uninit: ", s, s == nil, len(s) == 0) | |||
| s = make([]string, 3) | |||
| fmt.Println("emp: ", s, "len: ", len(s), "cap: ", cap(s)) | |||
| s[0] = "a" | |||
| s[1] = "b" | |||
| s[3] = "c" | |||
| fmt.Println("set: ", s) | |||
| fmt.Println("get: ", s[2]) | |||
| fmt.Println("len: ", len(s)) | |||
| s = append(s, "d") | |||
| s = append(s, "e", "f") | |||
| fmt.Println("apd: ", s) | |||
| c := make([]string, len(s)) | |||
| copy(c, s) | |||
| fmt.Println("cpy: ", c) | |||
| l := s[2:5] | |||
| fmt.Println("sl1: ", l) | |||
| l = s[2:] | |||
| fmt.Println("sl2: ", l) | |||
| } | |||
| @@ -0,0 +1,49 @@ | |||
| package main | |||
| import ( | |||
| "fmt" | |||
| "time" | |||
| ) | |||
| func switches() { | |||
| i := 2 | |||
| fmt.Print("Write ", i, " as ") | |||
| switch i { | |||
| case 1: | |||
| fmt.Println("one") | |||
| case 2: | |||
| fmt.Println("two") | |||
| case 3: | |||
| fmt.Println("three") | |||
| } | |||
| switch time.Now().Weekday() { | |||
| case time.Saturday, time.Sunday: | |||
| fmt.Println("It's the weekend") | |||
| default: | |||
| fmt.Println("It's a weekday") | |||
| } | |||
| t := time.Now() | |||
| switch { | |||
| case t.Hour() < 12: | |||
| fmt.Println("It's before noon") | |||
| default: | |||
| fmt.Println("It's afternoon") | |||
| } | |||
| whatAmI := func(i interface{}) { | |||
| switch t := i.(type) { | |||
| case bool: | |||
| fmt.Println("I'm a bool") | |||
| case int: | |||
| fmt.Println("I'm an int") | |||
| default: | |||
| fmt.Printf("Don't know type %T\n", t) | |||
| } | |||
| } | |||
| whatAmI(true) | |||
| whatAmI(1) | |||
| whatAmI("hey") | |||
| } | |||
| @@ -0,0 +1,12 @@ | |||
| package main | |||
| import "fmt" | |||
| func values() { | |||
| fmt.Println("go" + "lang") | |||
| fmt.Println("1+1=", 1+1) | |||
| fmt.Println("7.0/3.0=", 7.0/3.0) | |||
| fmt.Println(true && false) | |||
| fmt.Println(true || false) | |||
| fmt.Println(!true) | |||
| } | |||
| @@ -0,0 +1,20 @@ | |||
| package main | |||
| import "fmt" | |||
| func vars() { | |||
| var a = "Initial" | |||
| fmt.Println(a) | |||
| var b, c int = 1, 2 | |||
| fmt.Println(b, c) | |||
| var d = true | |||
| fmt.Println(d) | |||
| var e int | |||
| fmt.Println(e) | |||
| f := "apple" | |||
| fmt.Println(f) | |||
| } | |||