BitSet [Résolu]

fatmanajjar - 7 juin 2017 à 15:28 - Dernière réponse : KX 15100 Messages postés samedi 31 mai 2008Date d'inscriptionModérateurStatut 16 décembre 2017 Dernière intervention
- 8 juin 2017 à 07:12
Bonjour,

C'est quoi l'avantage d'utiliser les BitSet au niveau de la memoire?
Il n'ya pas grand chose sur internet sur les BitSet.
Merci d'avance pour vos retours.
Afficher la suite 

3 réponses

Répondre au sujet
fatmanajjar - 8 juin 2017 à 05:05
0
Utile
1
Bonjour,

Merci pour votre réponse.

Si j'ai bien comprit, 1 BitSet prend 1 octet en mémoire.

Est ce que pour les 2 suivantes instructions, ça va prendre le même nombre de bits en memoire ?

BitSet b = new BitSet(10);

BitSet bb=new BitSet(1024);
KX 15100 Messages postés samedi 31 mai 2008Date d'inscriptionModérateurStatut 16 décembre 2017 Dernière intervention - 8 juin 2017 à 07:12
"Si j'ai bien comprit, 1 BitSet prend 1 octet en mémoire."
Non, ce que j'ai dit c'est "8 booléens dans un 1 octet" donc 80 booléens ça fera 10 octets, 800 booléens 100 octets... mais ça c'est la vision générale.
Dans le détail c'est un tableau de long, donc 8 octets par case et donc 64 bits. Donc si tu veux entre 1 et 64 bits : 8 octets, entre 65 et 128 bits : 16 octets, etc.
Il faudra également rajouter la taille du tableau ainsi que celle de l'objet BitSet.
Commenter la réponse de fatmanajjar
KX 15100 Messages postés samedi 31 mai 2008Date d'inscriptionModérateurStatut 16 décembre 2017 Dernière intervention - 7 juin 2017 à 19:14
-1
Utile
Bonjour,

Ça n'a pas plus d'intérêt que ça et si tu ne trouves pas grand chose c'est parce que peu de gens s'en servent.

En terme de mémoire, 1 boolean vaut 1 octet, alors qu'avec un BitSet on peut mettre jusqu'à 8 booléens dans un 1 octet.

Mais à moins d'avoir de très grosses données à traiter en mémoire ça reste quand même superflu. Si tuBonjour,

Ça n'a pas plus d'intérêt que ça et si tu ne trouves pas grand chose c'est parce que peu de gens s'en servent.

En terme de mémoire, 1 boolean vaut 1 octet, alors qu'avec un BitSet on peut mettre jusqu'à 8 booléens dans un 1 octet.

Mais à moins d'avoir de très grosses données à traiter en mémoire ça reste quand même superflu.
Commenter la réponse de KX