Go語言中數(shù)組的基本用法演示
首先來看一下如何聲明數(shù)組:
package main
import "fmt"
var arr [2]int //申明一個數(shù)組
func main() {
arr[0] = 1 //數(shù)組賦值
fmt.Println(arr)
arrtest := [3]int{1, 2, 3} //數(shù)組的另一種申明方式
fmt.Println(arrtest)
a := [...]int{1, 2} //[...]自動識別數(shù)組的長度
fmt.Println(a)
fmt.Println(len(a))//輸出數(shù)組的長度
}
go語言可以自動計算數(shù)組的長度,譬如你知道數(shù)組有幾個可以如下申明
a:=[...]int{1,2,3,45}
指針數(shù)組
a:=[3]int{1,2,3}
var p * [3]int = &a //這種是指針數(shù)組 我們看到可以直接輸出指向數(shù)組的指針
x , y :=1 ,3
a := [...]*int{&x ,&y}
str.Println(a) //輸出這樣[0xc080000068 0xc080000070]的地址 這就是數(shù)組指針
可以用new關(guān)鍵字申明
p := new([10]int)
fmt.Println(p) //&[0 0 0 0 0 0 0 0 0 0] 輸出一個指針
多維數(shù)組跟其他語言一樣
c := [3][2]int{{1: 2}, {2, 1}, {2, 2}}
fmt.Println(c) //輸出[[0 2] [2 1] [2 2]]
下邊是slice的申明和使用其實這就是一種動態(tài)的數(shù)組
package main
import "fmt"
var arr [2]int //申明一個數(shù)組
func main() {
arr[0] = 1 //數(shù)組賦值
fmt.Println(arr)
arrtest := [3]int{1, 2, 3} //數(shù)組的另一種申明方式
fmt.Println(arrtest)
a := [...]int{1, 2} //[...]自動識別數(shù)組的長度
fmt.Println(a)
fmt.Println(len(a))//輸出數(shù)組的長度
}
來看一下冒泡算法之go語言版
package main
import "fmt"
func main() {
a := [...]int{3, 2, 5, 8, 6}
fmt.Println(a)
num := len(a)
for i := 0; i < num; i++ {
for j := i + 1; j < num; j++ {
if a[i] < a[j] {
temp := a[i]
a[i] = a[j]
a[j] = temp
}
}
}
fmt.Println(a)
}
相關(guān)文章
go實現(xiàn)grpc四種數(shù)據(jù)流模式
這篇文章主要為大家介紹了go實現(xiàn)grpc四種數(shù)據(jù)流模式,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步早日升職加薪2022-04-04
Go語言基于viper實現(xiàn)apollo多實例快速
viper是適用于go應(yīng)用程序的配置解決方案,這款配置管理神器,支持多種類型、開箱即用、極易上手。本文主要介紹了如何基于viper實現(xiàn)apollo多實例快速接入,感興趣的可以了解一下2023-01-01
如何使用Goland IDE go mod 方式構(gòu)建項目
這篇文章主要介紹了如何使用Goland IDE go mod 方式構(gòu)建項目,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-10-10

