Programmation en Go/Les types de base

Les réels

modifier

Ce sont les nombres réels qui ici sont, bien entendu, approchés par des valeurs finies pour des raisons évidentes de limite de taille. Ces nombres sont déclarés par le type float qui veut dire "nombre réel à virgule flottante".

Voici comment déclarer un réel :

// déclaration de constante
const Pi = 3.14159
// variable rayon
var rayon float32 = 1.0

Les lignes commençant par deux barres sont ignorées à la compilation ; ce sont ce qu'on appelle des commentaires.

Si l'on utilise ":=" à la place de "=", le type est déterminé automatiquement (inféré) et à ce moment, on peut écrire :

rayon := 1.0

Opérations arithmétiques

modifier

Les opérations suivantes sont supportées :

  • addition +
  • soustraction -
  • multiplication *
  • division /

Voici deux exemples :

var aire = rayon*rayon*Pi
var circonference = 2*rayon*Pi
var n = 100
var somme = 2*n*(n-1)

Entiers

modifier

Un entier est déclaré avec le type int (integer). Il existe d'autres types d'entier, notamment uint qui est toujours positif.

Les types int64 et uint64 sont de plus grande capacité car ils sont stockés sur 64 bits quelle que soit l'architecture utilisée, tandis qu' int et uint sont en général stockés sur 32 bits.

Les mêmes opérations arithmétiques s'appliquent aux entiers, avec en plus le reste de la division ou modulo (%). Exemple:

var reste = 821 % 100
// le résultat est le reste de la division par 100 soit 21

De plus, les nombres entiers et réels supportent les incrémentations (ajout de un) et décrémentations (retrancher un).

// Incrémentation
i++
// Décrémentation
i--

Chaînes de caractères

modifier

Elles correspondent au type string. Les chaînes peuvent être concaténées avec l'opérateur d'addition (+), en concaténant "James " et "Bond" on obtient "James Bond". Les chaînes de caractères peuvent être déclarées en les mettant entre guillemets (double quotes).

Exemple :

var james = "James"
var nom = "Bond"
var nomComplet = james+" "+nom

Les chaînes de caractères sont encodées en UTF-8 dans les sources Go, et Go gère le jeu de caractères Unicode.

Booléens

modifier

Un booléen (type bool) ne peut prendre que deux valeurs: vrai et faux. Ces deux valeurs correspondent aux mots-clés true et false.

Nombres complexes

modifier

La fonction cmplx() construit un nombre complexe, tandis que real() et imag() permettent respectivement d'en obtenir les parties réelle et imaginaire.

cmplx(partieReelle, partieImaginaire) complex
real(complex) float
imag(complex) float