Junior — Middle
Μπορείτε να εξηγήσετε τον μηχανισμό προσθήκης ενός στοιχείου στο τέλος μιας δομής δεδομένων, όπως μια λίστα ή έναν πίνακα;
sobes.tech AI
Απάντηση από AI
Στη Go, για να προσθέσετε ένα στοιχείο στο τέλος ενός slice, χρησιμοποιείται η ενσωματωμένη λειτουργία append. Τα slices είναι δυναμικές δομές που μπορούν να αλλάξουν μέγεθος.
Παράδειγμα:
package main
import "fmt"
func main() {
nums := []int{1, 2, 3}
nums = append(nums, 4) // προσθέτουμε το 4 στο τέλος
fmt.Println(nums) // [1 2 3 4]
}
Αν το slice δεν έχει αρκετή χωρητικότητα, το append θα δημιουργήσει έναν νέο πίνακα με αυξημένο μέγεθος, θα αντιγράψει τα παλιά στοιχεία και θα προσθέσει το νέο. Οι πίνακες στη Go έχουν σταθερό μέγεθος, γι’ αυτό και για δυναμική προσθήκη χρησιμοποιούνται τα slices.