Maison  >  Article  >  développement back-end  >  Comment puis-je initialiser des tableaux booléens dans Go Without Loops ?

Comment puis-je initialiser des tableaux booléens dans Go Without Loops ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-11-01 08:53:02688parcourir

How Can I Initialize Boolean Arrays in Go Without Loops?

Création de tableaux booléens dans Go : alternatives aux boucles For

Lorsque vous travaillez avec des tableaux booléens dans Go, leur initialisation peut être une tâche courante. L'approche conventionnelle consiste à utiliser une boucle for pour définir chaque élément individuellement. Cependant, il existe d'autres moyens de réaliser cette initialisation sans recourir à des boucles.

Création de tableaux à valeur nulle

Une solution simple consiste à s'abstenir complètement d'utiliser une boucle for. . Les tableaux dans Go sont initialisés avec des valeurs nulles par défaut. Pour les tableaux booléens, cela signifie que tous les éléments seront définis sur false. Par conséquent, vous pouvez simplement déclarer un tableau de la taille souhaitée, et il sera initialisé avec tous les éléments définis sur false :

<code class="go">A := [n]bool{false, false, ..., false}</code>

Utilisation de littéraux composites

Composite Les littéraux offrent un moyen concis de créer et d'initialiser un tableau ou une tranche. Bien qu'ils nécessitent généralement plus de saisie qu'une boucle for, ils peuvent toujours fournir une solution pratique :

<code class="go">A := []bool{true, true, true}</code>

Raccourcir l'initialisation à l'aide de constantes

Si vous initialisez fréquemment des tableaux avec la même valeur, l'introduction d'une constante peut rationaliser le processus :

<code class="go">const T = true
A := []bool{T, T, T}</code>

Logique alternative : stockage des valeurs négatives

Au lieu de stocker des valeurs positives dans le tableau, envisagez de stocker valeurs niées. Cela vous permet d'initialiser le tableau avec sa valeur zéro (tous faux) et d'interpréter faux comme "non présent" ou "non manquant" :

<code class="go">missings := make([]bool, 6) // All false
// missing=false means not missing, means present</code>

Initialisation optimisée pour les grands tableaux

Pour les grands tableaux, la technique d'initialisation la plus efficace consiste à effectuer une opération "memset". Bien que Go ne dispose pas d'une fonction memset intégrée, la question suivante fournit une solution très efficace :

[Existe-t-il un analogue de memset dans Go ?](https://stackoverflow.com/questions/21376450/is -là-analogique-de-memset-in-go)

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