Skip to content

Instantly share code, notes, and snippets.

View kjk's full-sized avatar

Krzysztof Kowalczyk kjk

View GitHub Profile
@kjk
kjk / main.go
Created November 5, 2019 21:00
Encode data to file and decode from file
// :collection Essential Go
package main
import (
"encoding/gob"
"os"
"log"
"fmt"
)
@kjk
kjk / main.go
Created November 5, 2019 21:13
Reading records from CSV file
// :collection Essential Go
package main
import (
"bytes"
"encoding/csv"
"fmt"
"io"
"log"
)
@kjk
kjk / main.go
Created November 5, 2019 21:14
Writing records to CSV file
// :collection Essential Go
package main
import (
"encoding/csv"
"fmt"
"io/ioutil"
"log"
"os"
)
@kjk
kjk / main.go
Created November 5, 2019 21:16
for, while loops
// :collection Essential Go
package main
import "fmt"
func main() {
// :show start
for i := 0; i < 5; i += 2 {
fmt.Printf("i: %d\n", i)
}
@kjk
kjk / main.go
Created November 5, 2019 21:17
for without initialization statement
// :collection Essential Go
package main
import "fmt"
func main() {
// :show start
i := 0
for ; i < 5; i += 2 {
fmt.Printf("i: %d\n", i)
@kjk
kjk / main.go
Created November 5, 2019 21:19
for without test expression
// :collection Essential Go
package main
import "fmt"
func main() {
// :show start
i := 0
for ; ; i += 2 {
fmt.Printf("i: %d\n", i)
@kjk
kjk / main.go
Created November 5, 2019 21:20
for without increment statement
// :collection Essential Go
package main
import "fmt"
func main() {
// :show start
for i := 0; i < 5; {
fmt.Printf("i: %d\n", i)
i += 2
@kjk
kjk / main.go
Created November 5, 2019 21:21
infinite for loop
// :collection Essential Go
package main
import "fmt"
func main() {
// :show start
i := 0
for {
fmt.Printf("i: %d\n", i)
@kjk
kjk / main.go
Created November 5, 2019 21:22
for loop over a slice with range
// :collection Essential Go
package main
import "fmt"
func main() {
// :show start
a := []int{1, 3, 5}
for idx, value := range a {
fmt.Printf("idx: %d, value: %d\n", idx, value)
@kjk
kjk / main.go
Created November 5, 2019 23:15
Hex encode and decode
// collection: Essential Go
package main
import (
"bytes"
"encoding/hex"
"fmt"
"log"
)