欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

淺析Go語言中數(shù)組的使用

 更新時間:2023年08月31日 08:24:16   作者:小萬哥  
數(shù)組用于在單個變量中存儲相同類型的多個值,而不是為每個值聲明單獨的變量,這篇文章主要為大家介紹了Go語言中數(shù)組的簡單使用,需要?的可以參考下

數(shù)組用于在單個變量中存儲相同類型的多個值,而不是為每個值聲明單獨的變量。

聲明數(shù)組

在Go中,有兩種聲明數(shù)組的方式:

1.使用var關(guān)鍵字:

語法

var array_name = [length]datatype{values} // 這里定義了長度

或者

var array_name = [...]datatype{values} // 這里長度是隱含的

2.使用:=符號:

語法

array_name := [length]datatype{values} // 這里定義了長度

或者

array_name := [...]datatype{values} // 這里長度是隱含的

注意:長度指定了數(shù)組中要存儲的元素數(shù)量。在Go中,數(shù)組具有固定的長度。數(shù)組的長度可以通過一個數(shù)字來定義,也可以是隱含的(這意味著編譯器根據(jù)值的數(shù)量來決定數(shù)組的長度)。

數(shù)組示例

這個示例聲明了兩個具有定義長度的數(shù)組(arr1和arr2):

package main
import "fmt"
func main() {
  var arr1 = [3]int{1, 2, 3}
  arr2 := [5]int{4, 5, 6, 7, 8}
  fmt.Println(arr1)
  fmt.Println(arr2)
}

輸出:

[1 2 3]
[4 5 6 7 8]

示例

這個示例聲明了兩個隱含長度的數(shù)組(arr1和arr2):

package main
import "fmt"
func main() {
  var arr1 = [...]int{1, 2, 3}
  arr2 := [...]int{4, 5, 6, 7, 8}
  fmt.Println(arr1)
  fmt.Println(arr2)
}

輸出:

[1 2 3]
[4 5 6 7 8]

示例

這個示例聲明了一個字符串?dāng)?shù)組:

package main
import "fmt"
func main() {
  var cars = [4]string{"Volvo", "BMW", "Ford", "Mazda"}
  fmt.Print(cars)
}

輸出:

[Volvo BMW Ford Mazda]

訪問數(shù)組元素

您可以通過引用索引號來訪問特定的數(shù)組元素。

在Go中,數(shù)組索引從0開始。這意味著[0]是第一個元素,[1]是第二個元素,依此類推。

示例

這個示例展示了如何訪問prices數(shù)組中的第一個和第三個元素:

package main
import "fmt"
func main() {
  prices := [3]int{10, 20, 30}
  fmt.Println(prices[0])
  fmt.Println(prices[2])
}

輸出:

10
30

更改數(shù)組元素

您還可以通過引用索引號來更改特定數(shù)組元素的值。

示例

這個示例展示了如何更改prices數(shù)組中第三個元素的值:

package main
import "fmt"
func main() {
  prices := [3]int{10, 20, 30}
  prices[2] = 50
  fmt.Println(prices)
}

輸出:

[10 20 50]

數(shù)組初始化

如果數(shù)組或其元素在代碼中沒有被初始化,它將被分配其類型的默認(rèn)值。

提示:int的默認(rèn)值是0,string的默認(rèn)值是""。

示例

package main
import "fmt"
func main() {
  arr1 := [5]int{}           // 未初始化
  arr2 := [5]int{1, 2}       // 部分初始化
  arr3 := [5]int{1, 2, 3, 4, 5} // 全部初始化
  fmt.Println(arr1)
  fmt.Println(arr2)
  fmt.Println(arr3)
}

輸出:

[0 0 0 0 0]
[1 2 0 0 0]
[1 2 3 4 5]

僅初始化特定元素

也可以僅初始化數(shù)組中的特定元素。

示例

這個示例僅初始化數(shù)組的第二和第三個元素:

package main
import "fmt"
func main() {
  arr1 := [5]int{1: 10, 2: 40}
  fmt.Println(arr1)
}

輸出:

[0 10 40 0 0]

示例解釋

上面的數(shù)組有5個元素。

1:10 表示:將10賦值給數(shù)組索引1(第二個元素)。

2:40 表示:將40賦值給數(shù)組索引2(第三個元素)。

查找數(shù)組的長度

使用len()函數(shù)可以找到數(shù)組的長度:

示例

package main
import "fmt"
func main() {
  arr1 := [4]string{"Volvo", "BMW", "Ford", "Mazda"}
  arr2 := [...]int{1, 2, 3, 4, 5, 6}
  fmt.Println(len(arr1))
  fmt.Println(len(arr2))
}

輸出:

4
6

到此這篇關(guān)于淺析Go語言中數(shù)組的使用的文章就介紹到這了,更多相關(guān)go數(shù)組內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • golang sync.Pool 指針數(shù)據(jù)覆蓋問題解決

    golang sync.Pool 指針數(shù)據(jù)覆蓋問題解決

    本文主要介紹了使用sync.Pool時遇到指針數(shù)據(jù)覆蓋的問題,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2025-03-03
  • Go?defer?去掉閉包函數(shù)及用法分析

    Go?defer?去掉閉包函數(shù)及用法分析

    這篇文章主要為大家介紹了Go?defer?去掉閉包函數(shù)及用法分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-07-07
  • 深入了解Golang?interface{}的底層原理實現(xiàn)

    深入了解Golang?interface{}的底層原理實現(xiàn)

    在?Go?語言沒有泛型之前,接口可以作為一種替代實現(xiàn),也就是萬物皆為的?interface。那到底?interface?是怎么設(shè)計的底層結(jié)構(gòu)呢?下面咱們透過底層分別看一下這兩種類型的接口原理。感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助
    2022-10-10
  • Go語言實戰(zhàn)之實現(xiàn)一個簡單分布式系統(tǒng)

    Go語言實戰(zhàn)之實現(xiàn)一個簡單分布式系統(tǒng)

    如今很多云原生系統(tǒng)、分布式系統(tǒng),例如?Kubernetes,都是用?Go?語言寫的,這是因為?Go?語言天然支持異步編程。本篇文章將介紹如何用?Go?語言編寫一個簡單的分布式系統(tǒng),需要的小伙伴開業(yè)跟隨小編一起學(xué)習(xí)一下
    2022-10-10
  • Golang限流器time/rate設(shè)計與實現(xiàn)詳解

    Golang限流器time/rate設(shè)計與實現(xiàn)詳解

    在?Golang?庫中官方給我們提供了限流器的實現(xiàn)golang.org/x/time/rate,它是基于令牌桶算法(Token?Bucket)設(shè)計實現(xiàn)的,下面我們就來看看他的具體使用吧
    2024-03-03
  • Golang生成Excel文檔的方法步驟

    Golang生成Excel文檔的方法步驟

    生成Excel是一個很常見的需求,本文將介紹如何使用Go的 Excelize庫去生成Excel文檔,以及一些具體場景下的代碼實現(xiàn),感興趣的可以參考一下
    2021-06-06
  • 利用 Go 語言編寫一個簡單的 WebSocket 推送服務(wù)

    利用 Go 語言編寫一個簡單的 WebSocket 推送服務(wù)

    這篇文章主要介紹了利用 Go 語言編寫一個簡單的 WebSocket 推送服務(wù),需要的朋友可以參考下
    2018-04-04
  • GO使用socket和channel實現(xiàn)簡單控制臺聊天室

    GO使用socket和channel實現(xiàn)簡單控制臺聊天室

    今天小編給大家分享一個簡單的聊天室功能,聊天室主要功能是用戶可以加入離開聊天室,實現(xiàn)思路也很簡單明了,下面小編給大家?guī)砹送暾a,感興趣的朋友跟隨小編一起看看吧
    2021-12-12
  • go通過benchmark對代碼進(jìn)行性能測試詳解

    go通過benchmark對代碼進(jìn)行性能測試詳解

    在開發(fā)中我們要想編寫高性能的代碼,或者優(yōu)化代碼的性能時,你首先得知道當(dāng)前代碼的性能,在go中可以使用testing包的benchmark來做基準(zhǔn)測試 ,文中有詳細(xì)的代碼示例,感興趣的小伙伴可以參考一下
    2023-04-04
  • GO語言 復(fù)合類型專題

    GO語言 復(fù)合類型專題

    這篇文章主要介紹了GO語言 復(fù)合類型的的相關(guān)資料,文中講解非常細(xì)致,代碼幫助大家更好的理解和學(xué)習(xí),感興趣的朋友可以了解下
    2020-06-06

最新評論