L'opérateur d'affectation est composé du caractère "deux points" suivi du signe "égal" (:=).
Exemple
//Assign the Number value of 10 to the variable x
x := 10;
//Assign the String value of "hello" to the
//variable named greeting
greeting := "hello";
L'opérateur d'égalité (=) est utilisé pour vérifier que deux valeurs sont égales. Une erreur courante consiste à utiliser l'opérateur d'égalité alors qu'en réalité, c'est l'opérateur d'affectation qui est attendu. Ceci peut donner lieu à un mystérieux message d'erreur ou à aucun message d'erreur puisqu'il est souvent syntaxiquement correct d'utiliser l'opérateur d'égalité. Par exemple :
greeting = "hello";
La formule ci-dessus vérifie si la valeur contenue dans la variable "salutation" est égale à la valeur "bonjour". Si c'est le cas, la valeur de l'expression est True (Vrai), sinon, la valeur est False (Faux). Dans tous les cas, c'est une expression parfaitement correcte dans la syntaxe Crystal (en supposant que "salutation" soit une variable de type chaîne).