Maison  >  Article  >  Java  >  Exemple de code pour analyser le nombre d'octets occupés par char en Java

Exemple de code pour analyser le nombre d'octets occupés par char en Java

怪我咯
怪我咯original
2017-04-08 10:42:021676parcourir

Cet article présente principalement les informations pertinentes sur l'analyse du nombre d'octets occupés par char en Java. Les amis qui en ont besoin peuvent se référer à

Exemple d'analyse du nombre d'octets occupés par char en Java <.>

1 : "octet" est un octet, "bit" est un bit

 2 : 1 octet = 8 bits ; >
Le caractère fait 2 octets en Java. Java utilise Unicode, 2 octets (16 bits) pour représenter un caractère.


L'exemple de code est le suivant :

public class Test {

  public static void main(String[] args) { 
    String str= "中"; 
    char x =&#39;中&#39;; 
    byte[] bytes=null; 
    byte[] bytes1=null; 
    try { 
      bytes = str.getBytes("utf-8"); 
      bytes1 = charToByte(x); 
    } catch (UnsupportedEncodingException e) { 
      // TODO Auto-generated catch block 
      e.printStackTrace(); 
    } 
    System.out.println("bytes 大小:"+bytes.length); 
    System.out.println("bytes1大小:"+bytes1.length); 
  } 
  public static byte[] charToByte(char c) {  
    byte[] b = new byte[2];  
    b[0] = (byte) ((c & 0xFF00) >> 8);  
    b[1] = (byte) (c & 0xFF);  
    return b;  
  } 
}


Résultat d'exécution :

octets Taille : 3

taille des octets1 : 2
Java utilise l'Unicode pour représenter les caractères. L'Unicode du caractère chinois "中" est de 2 octets.


La méthode String.getBytes(encoding) consiste à obtenir la représentation byte

array

de l'encodage spécifié,
Habituellement, gbk/gb2312 vaut 2 octets, UTF-8 fait 3 octets.


Si l'encodage n'est pas spécifié, l'encodage par défaut du système sera utilisé.

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