Maison  >  Article  >  Java  >  Combien d’octets une chaîne Java occupe-t-elle en mémoire ?

Combien d’octets une chaîne Java occupe-t-elle en mémoire ?

Barbara Streisand
Barbara Streisandoriginal
2024-10-26 18:24:03372parcourir

 How Many Bytes Does a Java String Occupy in Memory?

Calcul du nombre d'octets dans une chaîne Java

En Java, une chaîne est une collection de caractères qui occupent un nombre spécifique d'octets en mémoire. Le nombre d'octets dépend de l'encodage utilisé pour représenter la chaîne.

Pour déterminer le nombre d'octets dans une chaîne, vous pouvez utiliser la méthode getBytes(), qui convertit la chaîne en un tableau d'octets. La taille du tableau d'octets correspond au nombre d'octets dans la chaîne.

Par exemple :

<code class="java">String s = "Hello World";
byte[] bytes = s.getBytes("UTF-8");
int numBytes = bytes.length;</code>

Dans cet exemple, la chaîne "Hello World" est convertie en un tableau d'octets en utilisant l'encodage UTF-8. La longueur du tableau d'octets (numBytes) sera le nombre d'octets dans la chaîne.

Il est important de noter que le nombre d'octets dans une chaîne peut varier en fonction de l'encodage utilisé. Par exemple, ce qui suit démontrera les différences de nombre d'octets pour la même chaîne en utilisant différents encodages :

<code class="java">byte[] utf8Bytes = s.getBytes("UTF-8");
byte[] utf16Bytes = s.getBytes("UTF-16");
byte[] utf32Bytes = s.getBytes("UTF-32");</code>

Le nombre d'octets pour chaque encodage sera imprimé, montrant comment la représentation de la chaîne en termes de les octets changent avec différents jeux de caractères.

Par conséquent, lorsque vous travaillez avec des chaînes, il est essentiel de prendre en compte l'encodage utilisé lors de la détermination du nombre d'octets.

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