Maison  >  Article  >  développement back-end  >  Qu’entendons-nous VRAIMENT par types de données immuables ?

Qu’entendons-nous VRAIMENT par types de données immuables ?

WBOY
WBOYoriginal
2024-08-12 18:35:54372parcourir

What do we REALLY mean by immutable data types?

Pourquoi les types de données sont-ils mutables ou immuables ?
Regardons python comme exemple,

Les types de données en python sont essentiellement des objets ou des classes, int est une classe, des flotteurs, des listes, etc.

Par conséquent, écrire x=6 crée un nouvel objet entier avec une valeur de 6 et pointe une référence appelée x sur cet objet.

Maintenant, nous devons examiner les classes, les classes regroupent essentiellement les données et les fonctions, ces fonctions sont appelées méthodes et elles sont de deux types : les méthodes accesseur et mutateur.

Les méthodes accesseurs accèdent à l'état actuel d'un objet mais ne modifient pas l'objet lui-même, par exemple

x = "bonjour"
y = x.upper()

Ici, la méthode upper est appelée sur l'objet auquel x fait référence, l'accesseur upper renvoie alors un nouvel objet, un objet str qui est une version majuscule de la chaîne d'origine. (n'hésitez pas à relire), en gros, il renvoie un nouvel objet basé sur l'original, maintenant seulement il est en majuscule.

Les méthodes Mutator, par contre, modifient les valeurs des objets existants et un bon exemple est le type de liste (classe).

nouvelleListe = [1,2,3]
newList.reverse()

Cette méthode mutera l'objet existant, une méthode de mutation ne peut pas être annulée.

Les types de données dépourvus de ces méthodes de mutation sont dits immuables et ne contiennent donc que des méthodes d'accès, celles qui manquent sont mutables.

J'espère que cela vous a aidé, restez curieux :)

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
Article précédent:Présentation de MyPyArticle suivant:Présentation de MyPy