AnyCompiler

Arrays aur Slices

Ek array ka size fixed hota hai jo uske type ka hissa hota hai — [3]int aur [5]int bilkul alag types hain. Arrays Go mein maujood hain, lekin everyday code mein inhe slices se kahin kam istemal kiya jaata hai.

package main

import "fmt"

func main() {
	var grid [3]int
	grid[0] = 10
	grid[1] = 20
	grid[2] = 30
	fmt.Println(grid, len(grid))
}
Output
[10 20 30] 3

Slices: Go ka go-to collection

Ek slice ek flexible, growable view hai ek underlying array par — append() ek item add karta hai (zaroorat parne par underlying storage ko khud ba khud grow karte hue), aur [start:end] se slicing karna aapko ek range par ek view deta hai data ko copy kiye baghair.

package main

import "fmt"

func main() {
	fruits := []string{"apple", "banana", "cherry"}
	fruits = append(fruits, "date")
	fmt.Println(fruits)

	firstTwo := fruits[0:2]
	fmt.Println(firstTwo)
}
Output
[apple banana cherry date]
[apple banana]

Aage: maps — Go ka built-in key-value collection, aur comma-ok idiom yeh check karne ke liye ke ek key maujood hai ya nahi.

Practice exercise

Ek slice numbers := []int{4, 8, 15, 16} banayein, 23 add karne ke liye append istemal karein, phir slice print karein.