Java char は何バイトを占有しますか?

青灯夜游
リリース: 2020-08-22 14:52:12
オリジナル
3357 人が閲覧しました

Java では、char は 2 バイトを占めます。 Java では、数字、英語、漢字を問わず、文字であれば 2 バイトを使用します。理由: Java コンパイラはデフォルトで Unicode エンコードを使用するため、2 バイトですべての文字を表すことができます。

Java char は何バイトを占有しますか?

関連する推奨事項: 「Java ビデオ チュートリアル

1: 「バイト」はバイトです。 Bit" はビットです。

2: 1 バイト = 8 ビットです。Java では

char は 2 バイトです。 Java では、Unicode、2 バイト (16 ビット) を使用して文字を表現します。

public class Test {
 
 
	public static void main(String[] args) {
		String str= "中";
		char x ='中';
		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; 
    }
}
ログイン後にコピー

実行結果:

bytes 大小:3
bytes1大小:2
ログイン後にコピー

Java は Unicode を使用して文字を表現します。漢字「中」の Unicode は 2 バイトです。

String.getBytes(encoding) メソッドは、指定されたエンコーディングのバイト配列表現を取得します。

通常、gbk/gb2312 は 2 バイト、utf-8 は 3 バイトです。

エンコーディングが指定されていない場合は、システムのデフォルトのエンコーディングが使用されます。

関連するプログラミングの知識については、

プログラミング学習 Web サイト

をご覧ください。 !

以上がJava char は何バイトを占有しますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート