Answers for "go slice"

Go
4

go slice initialization

mySlice := []int{1, 2, 3, 4, 5}
Posted by: Guest on August-05-2020
4

slice in golang

// Use of golang slice
func main() {
    // initialise the slice with 10 zero ints
	slice := make([]int, 10)
    // fillup with random ints
	fillSliceWithRand(slice)
    // prints the slice
	print(slice)
    // passes the slice by reference and reverse the slice
	reverse(slice)
    // prints the slice again
	print(slice)
}

// reverse method reverse the slice
func reverse(a []int) {
	l := len(a)
	for i := 0; i < l/2; i ++ {
		x := a[l-i-1]
		a[l-i-1] = a[i]
		a[i] = x
	}
}
// print method prints all ints of the slice
func print(a []int) {
	for _, v := range a {
		fmt.Printf("%d ", v)
	}
	fmt.Println()
}
// fillSliceWithRand method fills the slice with random ints
func fillSliceWithRand(a []int) {
	for i := 0; i < len(a); i++ {
		a[i] = rand.Intn(100)
	}
}
/**
## Slice in golang
	- Slices hold references to an underlying array, and if you 
      assign one slice to another, both refer to the same array.
	- If a function takes a slice argument, changes it makes to 
      the elements of the slice will be visible to the caller, 
      analogous to passing a pointer to the underlying array. 
**/
Posted by: Guest on July-03-2021
1

go slice

// loop over an array/a slice
for i, e := range a {
    // i is the index, e the element
}

// if you only need e:
for _, e := range a {
    // e is the element
}

// ...and if you only need the index
for i := range a {
}

// In Go pre-1.4, you'll get a compiler error if you're not using i and e.
// Go 1.4 introduced a variable-free form, so that you can do this
for range time.Tick(time.Second) {
    // do it once a sec
}
Posted by: Guest on January-12-2021
0

golang slice

package main

import (
	"fmt"
)

func main() {
	var slice = []int{1, 2, 3, 4, 5}
	var store = make([]int, 3)

	push := append(slice, 6, 7, 8, 9)
	copy(store, slice)

	fmt.Println("before append value", slice)
	fmt.Println("after append value", push)
	fmt.Println("render value all value exist", push[:])
	fmt.Println("render value after second value", push[2:])
	fmt.Println("render value before third index", push[:3])
	fmt.Println("render value start from zero and last value before second index", push[0:2])
	fmt.Println("merge slice value", store)
	fmt.Println("read size slice", len(slice))
	fmt.Println("read capacity slice", cap(slice))
}
Posted by: Guest on March-09-2021
0

go slice

func main() {
	s := []int{2, 3, 5, 7, 11, 13}
	printSlice(s)

	// Slice the slice to give it zero length.
	s = s[:0]
	printSlice(s)

	// Extend its length.
	s = s[:4]
	printSlice(s)

	// Drop its first two values.
	s = s[2:]
	printSlice(s)
}

func printSlice(s []int) {
	fmt.Printf("len=%d cap=%d %v\n", len(s), cap(s), s)
}
Posted by: Guest on January-15-2021

Browse Popular Code Answers by Language