Rumah >pembangunan bahagian belakang >Golang >Pemahaman mendalam tentang pengetahuan asas dan ciri tatasusunan bahasa Go

Pemahaman mendalam tentang pengetahuan asas dan ciri tatasusunan bahasa Go

PHPz
PHPzasal
2024-01-31 18:05:07743semak imbas

Pemahaman mendalam tentang pengetahuan asas dan ciri tatasusunan bahasa Go

Konsep asas dan ciri tatasusunan dalam bahasa Go

1.Konsep asas tatasusunan

Susun atur ialah struktur data yang boleh menyimpan berbilang elemen data daripada jenis yang sama. Setiap elemen dalam tatasusunan mempunyai indeks, bermula dari 0. Panjang tatasusunan ialah bilangan elemen dalam tatasusunan.

2. Pengisytiharan tatasusunan

Tatasusunan boleh diisytiharkan dengan menggunakan simbol []. Sebagai contoh, kod berikut mengisytiharkan tatasusunan 5 integer: [] 符号来声明。例如,以下代码声明了一个包含 5 个整数的数组:

var numbers [5]int

数组也可以使用 make() 函数来声明。make() 函数可以创建任意长度的数组。例如,以下代码创建了一个包含 10 个字符串的数组:

var names = make([]string, 10)

3. 数组的元素访问

数组中的元素可以通过使用索引来访问。例如,以下代码访问数组 numbers 中的第一个元素:

fmt.Println(numbers[0])

4. 数组的遍历

数组可以通过使用 for 循环来遍历。例如,以下代码遍历数组 numbers 并打印出其中的每个元素:

for i := 0; i < len(numbers); i++ {
  fmt.Println(numbers[i])
}

5. 数组的长度

数组的长度可以通过使用 len() 函数来获取。例如,以下代码获取数组 numbers 的长度:

length := len(numbers)

6. 数组的复制

数组可以通过使用 copy() 函数来复制。copy() 函数将一个数组中的元素复制到另一个数组中。例如,以下代码将数组 numbers 中的元素复制到数组 copyNumbers 中:

copy(copyNumbers, numbers)

7. 数组的排序

数组可以通过使用 sort.Sort() 函数来排序。sort.Sort() 函数将数组中的元素按升序或降序排序。例如,以下代码将数组 numbers 中的元素按升序排序:

sort.Sort(sort.IntSlice(numbers))

8. 数组的搜索

数组可以通过使用 sort.Search() 函数来搜索。sort.Search() 函数在数组中搜索一个元素并返回该元素的索引。例如,以下代码在数组 numbers 中搜索元素 5 并返回该元素的索引:

index := sort.Search(len(numbers), func(i int) bool { return numbers[i] == 5 })

9. 数组的常用方法

数组提供了许多常用的方法,这些方法可以帮助我们操作数组。例如,以下是一些常用的数组方法:

  • append():将一个元素添加到数组的末尾。
  • cap():返回数组的容量。
  • copy():将一个数组中的元素复制到另一个数组中。
  • len():返回数组的长度。
  • make():创建任意长度的数组。
  • sort.Sort():将数组中的元素按升序或降序排序。
  • sort.Search()
    // 声明一个包含 5 个整数的数组
    var numbers [5]int
    
    // 数组元素访问
    fmt.Println(numbers[0])
    
    // 数组遍历
    for i := 0; i < len(numbers); i++ {
      fmt.Println(numbers[i])
    }
    
    // 数组的长度
    length := len(numbers)
    
    // 数组的复制
    copyNumbers := make([]int, len(numbers))
    copy(copyNumbers, numbers)
    
    // 数组的排序
    sort.Sort(sort.IntSlice(numbers))
    
    // 数组的搜索
    index := sort.Search(len(numbers), func(i int) bool { return numbers[i] == 5 })
  • Tatasusunan juga boleh diisytiharkan menggunakan fungsi make(). Fungsi make() boleh mencipta tatasusunan dengan sebarang panjang. Contohnya, kod berikut mencipta tatasusunan 10 rentetan:
rrreee

3 Akses elemen tatasusunan

Elemen dalam tatasusunan boleh diakses dengan menggunakan indeks. Sebagai contoh, kod berikut mengakses elemen pertama dalam tatasusunan nombor:

rrreee🎜4 Traversal of Arrays 🎜🎜Arrays boleh dilalui dengan menggunakan gelung for. Sebagai contoh, kod berikut berulang pada tatasusunan nombor dan mencetak setiap elemen di dalamnya: 🎜rrreee🎜5 Panjang tatasusunan 🎜🎜Panjang tatasusunan boleh ditentukan dengan menggunakan len() fungsi untuk mendapatkan. Contohnya, kod berikut mendapat panjang tatasusunan nombor: 🎜rrreee🎜6 Menyalin Tatasusunan 🎜🎜 Tatasusunan boleh disalin dengan menggunakan fungsi copy(). Fungsi copy() menyalin elemen dari satu tatasusunan ke tatasusunan yang lain. Sebagai contoh, kod berikut menyalin elemen dalam tatasusunan nombor ke tatasusunan copyNumbers: 🎜rrreee🎜7 Isih Tatasusunan🎜🎜 Tatasusunan boleh diisih menggunakan sort.Sort () fungsi untuk mengisih. Fungsi sort.Sort() mengisih elemen dalam tatasusunan dalam tertib menaik atau menurun. Sebagai contoh, kod berikut mengisih elemen dalam tatasusunan nombor dalam tertib menaik: 🎜rrreee🎜8 Carian Tatasusunan 🎜🎜 Tatasusunan boleh dicari dengan menggunakan sort.Search()kod> fungsi . Fungsi <code>sort.Search() mencari elemen dalam tatasusunan dan mengembalikan indeks elemen tersebut. Sebagai contoh, kod berikut mencari elemen 5 dalam tatasusunan nombor dan mengembalikan indeks elemen: 🎜rrreee🎜9 Kaedah tatasusunan biasa 🎜🎜 Tatasusunan menyediakan banyak kaedah biasa yang boleh membantu kami beroperasi. tatasusunan. Sebagai contoh, berikut ialah beberapa kaedah tatasusunan yang biasa digunakan: 🎜
  • tambah(): Menambah elemen pada penghujung tatasusunan. 🎜
  • cap(): Mengembalikan kapasiti tatasusunan. 🎜
  • copy(): Salin elemen daripada satu tatasusunan ke tatasusunan lain. 🎜
  • len(): Mengembalikan panjang tatasusunan. 🎜
  • make(): Buat tatasusunan dengan sebarang panjang. 🎜
  • sort.Sort(): Isih elemen dalam tatasusunan dalam tertib menaik atau menurun. 🎜
  • sort.Search(): Cari elemen dalam tatasusunan dan kembalikan indeks elemen. 🎜🎜🎜10 contoh kod untuk tatasusunan🎜🎜Berikut ialah beberapa contoh kod untuk tatasusunan:🎜rrreee

Atas ialah kandungan terperinci Pemahaman mendalam tentang pengetahuan asas dan ciri tatasusunan bahasa Go. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn