Maison  >  Article  >  développement back-end  >  Le découpage du golang nécessite-t-il une fabrication ?

Le découpage du golang nécessite-t-il une fabrication ?

尚
original
2020-01-14 15:36:365097parcourir

Le découpage du golang nécessite-t-il une fabrication ?

Slice est une structure de données spéciale dans Golang. Cette structure de données est plus facile à utiliser et à gérer les collections de données. Les tranches sont construites autour du concept de tableaux dynamiques, qui peuvent automatiquement s'agrandir et se réduire à la demande.

Créez une tranche via la fonction make()

Utilisez la fonction make() intégrée de Golang pour créer une tranche. À ce stade, vous devez la transmettre. un paramètre pour préciser la longueur de la tranche :

// 创建一个整型切片
// 其长度和容量都是 5 个元素
slice := make([]int, 5)

A ce moment, seule la longueur de la tranche est précisée, alors la contenance et la longueur de la tranche sont égales. Vous pouvez également spécifier la longueur et la capacité séparément :

// 创建一个整型切片
// 其长度为 3 个元素,容量为 5 个元素
slice := make([]int, 3, 5)

Lorsque vous spécifiez respectivement la longueur et la capacité, la longueur du tableau sous-jacent de la tranche créée est la capacité spécifiée, mais tous les éléments du tableau ne sont pas accessibles après initialisation.

Notez que Golang ne permet pas la création de tranches d'une capacité inférieure à la longueur. Lorsque la tranche créée a une capacité inférieure à la longueur, une erreur sera signalée au moment de la compilation :

// 创建一个整型切片
// 使其长度大于容量
myNum := make([]int, 5, 3)
<.>

Créer une tranche via un littéral

Une autre méthode couramment utilisée pour créer des tranches consiste à utiliser des littéraux de tranche. Cette méthode est similaire à la création d'un tableau, sauf qu'il n'est pas nécessaire de spécifier. la valeur dans l'opérateur []. La longueur et la capacité initiales seront déterminées en fonction du nombre d'éléments fournis lors de l'initialisation :

// 创建字符串切片
// 其长度和容量都是 3 个元素
myStr := []string{"Jack", "Mark", "Nick"}
// 创建一个整型切片
// 其长度和容量都是 4 个元素
myNum := []int{10, 20, 30, 40}

Lorsque vous utilisez un littéral de tranche pour créer une tranche, vous pouvez également définir la longueur et la capacité initiales. Tout ce qui est fait est de donner la longueur et la capacité requises comme index au moment de l'initialisation. La syntaxe suivante montre comment utiliser l'indexation pour créer une tranche d'une longueur et d'une capacité de 100 éléments :

// 创建字符串切片
// 使用空字符串初始化第 100 个元素
myStr := []string{99: ""}

Pour plus de connaissances sur Golang, veuillez faire attention à la colonne

tutoriel golang.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn