Introduction
Slices let you work with parts of arrays easily without copying data. They help manage arrays more flexibly.
package main import "fmt" func main() { var array [5]int = [5]int{10, 20, 30, 40, 50} slice := array[1:4] // slice from index 1 to 3 fmt.Println("Array:", array) fmt.Println("Slice:", slice) }
package main import "fmt" func main() { var emptyArray [0]int emptySlice := emptyArray[:] fmt.Println("Empty array:", emptyArray) fmt.Println("Empty slice:", emptySlice) }
package main import "fmt" func main() { singleElementArray := [1]int{100} slice := singleElementArray[:] fmt.Println("Single element array:", singleElementArray) fmt.Println("Slice of single element:", slice) }
package main import "fmt" func main() { array := [3]int{1, 2, 3} sliceStart := array[:1] // first element sliceEnd := array[2:] // last element fmt.Println("Slice from start:", sliceStart) fmt.Println("Slice from end:", sliceEnd) }
package main import "fmt" func main() { // Create an array of 5 integers numbersArray := [5]int{10, 20, 30, 40, 50} // Create a slice from the array (elements at index 1 to 3) numbersSlice := numbersArray[1:4] fmt.Println("Original array:", numbersArray) fmt.Println("Slice of array:", numbersSlice) // Change an element in the slice numbersSlice[0] = 200 fmt.Println("After changing slice element:") fmt.Println("Array:", numbersArray) fmt.Println("Slice:", numbersSlice) // Change an element in the array numbersArray[3] = 400 fmt.Println("After changing array element:") fmt.Println("Array:", numbersArray) fmt.Println("Slice:", numbersSlice) }
arr := [5]int{1,2,3,4,5} that includes elements 2, 3, and 4?arr := [3]int{10, 20, 30}
slice := arr[:]
slice[1] = 99
fmt.Println(arr)arr := [4]int{1, 2, 3, 4}
slice := arr[1:3]
slice[2] = 10
fmt.Println(arr)arr := [5]int{1, 2, 3, 4, 5}, you create two slices:slice1 := arr[1:4]slice2 := arr[2:5]slice1[1] = 99, what will be the content of slice2?Pass the test and this pattern moves unknown