Java bit、byte、位、字節、漢字、字符


    package com.suypower.chengyu.test;  
      
    public class ByteTest {  
      
     /** 
      * byte 8 bits -128 - + 127 
      * 1 bit = 1 二進制數據 
      * 1 byte = 8 bit 
      * 1 字母 = 1 byte = 8 bit(位) 
      * 1 漢字 = 2 byte = 16 bit 
      */  
     public static void main(String[] args) {  
      // TODO Auto-generated method stub  
      byte b1 = 127;  
      byte b2 = -128;  
      byte b3 = 'a';  
      byte b4 = 'A'; // 一個字母 = 1 byte = 8 bit  
    //  byte b5 ='aa';  這就錯了  
    //  byte b6 ='中'; 這就錯了 一個漢字 2個字節 16bit  
      short s1 = '啊'; // 一個漢字 2個字節 16bit short 是 16 bit位的  
    //  short s2 = '漢字';  // 2個漢字 4個字節 32 bit int 是32 bit的  
    //  int i1 = '漢字';  但是 int 是數字類型的 , char 是 16 bit的 = 2 byte = 一個漢字  
      char c1 = '汗';  
    //  byte 轉換 string  
      String string = "中文";  
      byte by[] = string.getBytes();  
      String str = new String(by);  
      System.out.println("str="+str);  
     }  
      
    }  


==================================================================================

[Java-原創] bit、byte、位、字節、漢字、字符
bit、byte、位、字節、漢字的關系


        1 bit     = 1  二進制數據
        1 byte  = 8  bit
        1 字母 = 1  byte = 8 bit
        1 漢字 = 2  byte = 16 bit


1. bit:位
    一個二進制數據0或1,是1bit;

2. byte:字節
    存儲空間的基本計量單位,如:MySQL中定義 VARCHAR(45)  即是指 45個字節;
    1 byte = 8 bit

3. 一個英文字符占一個字節;
    1 字母 = 1 byte = 8 bit

4. 一個漢字占2個字節;
    1 漢字 = 2 byte = 16 bit

5. 標點符號
    A>.  漢字輸入狀態下,默認為全角輸入方式;
    B>.  英文輸入狀態下,默認為半角輸入方式;

    C>.  全角輸入方式下,標點符號占2字節;
    D>.  半角輸入方式下,標點符號占1字節;

    故:漢字輸入狀態下的字符,占2個字節 (但不排除,自己更改了默認設置);
            英文輸入狀態下的字符,占1個字節 (但不排除,自己更改了默認設置);

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM