【java学習ノート】java基本データ型-整型-補符号、逆符号、原符号

2821 ワード

目次
byte
short
int
long
JAva中進表記方法補符号、逆符号、原符号byte
  • byteデータ型は8ビットで、シンボルがあり、バイナリ符号で表される整数である.
  • の最小値は -128(-2^7);
  • の最大値は 127(2^7-1);
  • デフォルト値Yes 0;
  • byteタイプは大型配列で空間を節約するために使用され、主に整数の代わりに使用される.byte変数が占有する空間はintタイプの4分の1しかないからである.
  • 例:byte a = 100,byte b = -50.

  • short
  • shortデータ型は、16ビットの符号付きバイナリ符号で表される整数
  • である.
  • の最小値は -32768(-2^15);
  • の最大値は 32767(2^15 - 1);
  • Shortデータ型もbyteのようにスペースを節約できます.1つのshort変数はint型変数が占める空間の2分の1である.
  • デフォルト値Yes 0;
  • 例:short s=1000,short r=-2000.

  • int
  • intデータ型は32ビット、符号付きのバイナリ符号で表される整数である.
  • の最小値は -2,147,483,648(-2^31);
  • の最大値は 2,147,483,647(2^31 - 1);
  • 一般的に整数変数のデフォルトはintタイプである.
  • デフォルト値Yes 0 ;
  • 例:int a=100000、int b=-200000.

  • long
  • longデータ型は64ビットで、シンボルのあるバイナリ符号で表される整数である.
  • の最小値は -9,223,372,036,854,775,808(-2^63);
  • の最大値は 9,223,372,036,854,775,807(2^63 -1);
  • このタイプは主に大きな整数を必要とするシステムに使用される.
  • デフォルト値Yes 0L;
  • 例:long a=100000 L、Long b=-200000 L.「L」は理論的には大文字と小文字を区別しないが、「l」と書くと数字「1」と混同されやすく、弁解しにくい.だから大文字
  • がいいです
    JAva中進表記方法
  • バイナリ整数:0 bまたは0 Bで始まる
  • 8進数整数:0で始まる
  • 10進数整数:デフォルトの10進数
  • の16進数の整数:0 xまたは0 Xで始まる、そのうち10~15はそれぞれa~fで
  • を表す.
    Correcting
  • 正数の符号化は原符号と全く同じであり、負数の符号化はその逆符号化1
  • である.
  • の逆符号は、元の符号をビット毎に逆にするが、最上位(シンボルビット)は
  • を一定に保つ.
  • コンピュータは、すべてのデータ
  • を符号化形式で保存する.
    例は次のとおりです.
    package testproject;
    
    
    public class IntegerValTest
    {
    	public static void main(String[] args)
    	{
    		//         ,      56  byte    
    		byte a = 56;
    		/*
    		       ,     9999999999999  long    ,
    		    int     ,      
    		*/
    		// long bigValue = 9999999999999;
    		//         ,          L  ,    long  
    		long bigValue2 = 9223372036854775807L;
    
    		//  0       8     
    		int octalValue = 013;
    		System.out.println(octalValue);
    		//  0x 0X       16     
    		int hexValue1 = 0x13;
    		int hexValue2 = 0XaF;
    
    		System.out.println(hexValue1);
    		System.out.println(hexValue2);
    
    		//     8      
    		int binVal1 = 0b11010100;
    		byte binVal2 = 0B01101001;
    		//     32      ,       。
    		int binVal3 = 0B10000000000000000000000000000011;
    		System.out.println(binVal1); //   212
    		System.out.println(binVal2); //   105
    		System.out.println(binVal3); //   -2147483645
    		/*
    		     8     ,      32 ,        。
    		          byte      ,    binVal4   -23
    		               
    		    11101001
    		   11101000
    		   10010111, -(16+4+2+1)= -23
    		 */
    		byte binVal4 =  (byte)0b11101001;
    		/*
    		      32      ,    1。
    		           L  ,         64 , 32  1     。
    		    binVal5    2 31   + 2 + 1
    		 */
    		long binVal5 = 0B10000000000000000000000000000011L;
    		System.out.println(binVal4); //   -23
    		System.out.println(binVal5); //   2147483651
    	}
    }