Javaの変数とデータ型

同じ意味のjavascriptの変数と変数

変数と参照型変数の基本タイプ:Javaでは、変数は、2つのタイプに分けられます。(同じことがJavaScriptで真です)

基本データ型

基本データ型を直接行うことができる動作のCPUタイプです。Javaは、以下の基本データ型を定義しています。

  • 整数タイプ:バイト、短い、int型、長いです

  • 浮動小数点型:float型、ダブル

  • 文字の種類:文字

  • ブール型:Boolean

Javaの基本データ型は、それがどのような違いを生むん定義されましたか?これらの違いを理解するために、我々は、単にコンピュータのメモリの基本的な構造を見なければなりません。

最小コンピュータメモリ記憶装置は、バイト(バイト)であり、バイトが8ビットの2進数、すなわち、8ビットです。それからバイナリ表現の範囲0000000011111111十進で0〜255の観点からは、16進数は、に変換され00ff

メモリセルは、メモリアドレスと呼ばれる、0から番号が付けられています。各メモリセルは一つの部屋として見ることができ、メモリアドレスは、家の番号です。

バイトは、1バイト、1024バイト1Kであり、1024Kは1M、1024Mは1G、1024Gは1Tです。コンピュータメモリの4Tバイトを持っている数:

4T = 4 X 1024G
    = 4×1024 X 1024M
    ×1024 = 4×1024 X 1024K
    ×1024×1024 = 4×1024×1024 
   = 4398046511104

異なるデータ型が占めるバイト数が同じではありません。私たちは、Javaの基本データ型が占めるバイト数を見てみましょう。

       ┌───┐
   バイト│の│ 
       └───┘ 
       ┌───┬───┐ 
 短い│││ 
       └───┴───┘ 
       ┌───┬───┬───┬── ─┐ 
   int型│││││ 
       └───┴───┴───┴───┘ 
       ┌───┬───┬───┬───┬───┬───┬ ───┬───┐ 
  長い│││││││││ 
       └───┴───┴───┴───┴───┴───┴───┴─── ┘ 
       ┌───┬───┬───┬───┐ 
 フロート│││││ 
       └───┴───┴───┴───┘ 
       ┌───┬───┬ ───┬───┬───┬───┬───┬───┐ 
ダブル│││││││││ 
       └───┴───┴───┴─── ┴───┴───┴───┴───┘ 
       ┌───┬───┐ 
  文字│││
       └───┴───┘

byte正確には、バイトであり、一方、longおよびdouble8つのバイトが必要です。

整数

整数型のために、Javaは符号付き整数のみを定義し、したがって、最上位ビット「ビットは、(負のための1、正0)符号ビットを示しています。最大範囲として表すことができる整数の様々なタイプ:

  • バイト:-128〜127
  • 短い:-32768〜32767
  • INT:-2147483648〜2147483647
  • 長い:-9223372036854775808〜9223372036854775807

のは、整数の定義の例を見てみましょう:

整数の定義

パブリック クラスメイン{
     公共 静的 ボイドメイン(文字列[]引数){
         int型 I = 2147483647 ;
         int型 I2 = -2147483648 ;
         int型 I3 = 2_000_000_000は; // 識別が容易に下線
        int型、I4 =は0xFF0000を// 16進表現を16711680の
        int型 I5 = 0b1000000000; // 512バイナリ表現
         L = 9000000000000000000L; // long型の端部はLを追加する必要が
    } 
}

特別な注意:同じことが、例えば、異なる二進数は同一で表し15= 0xf=0b1111

フロート

小数の科学的表記法で発現された場合、小数点は1234.5 12.345x102ように表すことができるような、「フローティング」ので、フロートと呼ばれる、1.2345x103として表すことができることができるので、10進浮動小数点型の数です。

以下は、定義されたフロートの例を示します。

フロート F1 = 3.14f ;
 フロート F2 = 3.14e38f; // 3.14x10 ^ 38は、科学表記法で表現されている
ダブル D = 1.79e308 ;
 ダブル = -1.79e308 D2 ;
 ダブル D3 = 4.9E-324; // 科学的表記法4.9x10 ^ -324

float種類、我々は追加する必要がf接尾辞を。

浮動小数点数の範囲は非常に大きく表すことができるfloat最大3.4x1038を表すことができる種類の、およびdoubleタイプは最大1.79x10308を表します。

ブーリアン

ブールタイプbooleanのみtruefalse二つの値、ブール演算は、常に関係の計算以下のとおりです。

ブール B1 = trueにブール B2 = ;
 ブール isGreater 5 => 3; //はtrueと評価さ
int型年齢= 12であるブール isAdult =年齢> = 18である; //はfalseと評価します

ストレージの論理型のAVA言語は、理論的にのみブール1ビットを格納する必要があるため、提供を行いませんが、JVMの内部で通常ますboolean4バイト整数として表現します。

文字型

文字タイプはchar文字を表します。Javaのchar型は、標準のASCII以外に表現することができ、あなたはまた、Unicode文字を表すことができます。

パブリック クラスメイン{
     公共 静的 ボイドメイン(文字列[]引数){
         チャー Aが=「A」文字 ZH = '中' ; 
        System.out.println(A)。
        System.out.println(ZH)。
    } 
}

なお、char単一引用符の種類'だけで一つの文字、二重引用符とする"文字列型に区別。

定数

結合された場合は、変数を定義して、final修飾子、この変数は一定となります。

最終的な ダブル PI = 3.14; // PIが一定の
ダブル R&LT = 5.0 ;
 ダブルエリアはPI * R&LT *の= ; R&LT 
PI = 300; // コンパイルエラー!

定数定義で再び割り当て後に初期化されていない、割り当ては再びコンパイルエラーが発生します。

役割の定数はマジックナンバー(マジックナンバー)を回避するために、意味のある変数名で、例えば、コードの至る所に書いていない3.14のではなく、定数を定義します。将来的に精度を向上させる必要がある場合は、我々だけ変更するには、例えば、定数の定義を変更する必要がある3.1416すべての場所を交換することなく、3.14

カスタムによると、定数名は、通常はすべて大文字です。

varキーワード

いくつかのケースでは、タイプ名は書くためにあまりにも長い間、あまりにも面倒です。例えば:

StringBuilderのSB = 新しい StringBuilderの();

あなたは変数の型を省略したい場合は、この時間は、あなたが使用することができますvarキーワードを:

= SBた新しい文字列ビルダ();

コンパイラが自動的に係る可変代入文を推測しますsbタイプStringBuilderコンパイラ、声明:

= SBた新しい文字列ビルダ();

実際には、それが自動的になります。

StringBuilderのSB = 新しい StringBuilderの();

したがって、var変数の定義は、ただ少しだけ変数の型を記述します。

スコープ変数

Javaでは、複数行のステートメントは、{}で囲まれました。例えば、独自の範囲を有するように多くの制御文、条件およびループ例えば、{}:

IF(...){ // IF開始
    ...
     しばらく(...){ しばらくは始まる
        ... 
        IF(...){ // IFスタート
            ... 
        } // IFエンド
        ... 
    } / / しばらくエンディング
    ... 
} // END IF

これらが適切} {ネスト限り、コンパイラは、文のブロックの開始と終了を識別することができます。そして、変数はブロックの最初から最後まで定義されているスコープを持つ文ブロック、で定義されました。これらの変数が参照されているの範囲を超えて、コンパイラが文句を言うでしょう。例えば:

{ 
    ... 
    int型 ; I = 0 // 私はここに始まる定義された変数
    ... 
    { 
        ... 
        int型のx = 1; // 変数x、ここでは起動に定義
        ... 
        { 
            ... 
            文字列S = "こんにちは" ; // 変数sはここから始まる定義されてい
            ... 
        } // 変数sスコープは終わった
        ...
         // 、同じ名前の変数これは新しい変数sであることに注意してください、そしてそれ以上
         // しかしのでスコープ異なる、彼らは二つの異なる変数です: 
        文字列S =「こんにちは」; 
        ... 
    } // 変数xとsの範囲この目的のために
    ... 
} // I変数のスコープは終わりました

あなたは、変数のスコープを定義する場合、可能な限り変数はできるだけ小さいスコープで定義されているように、最小限の原則に従うべきである、と変数名を再利用しないでください。

概要

プリミティブ型と参照型:Javaのは、2つの変数の種類を提供します

基本タイプは、整数、浮動小数点、ブール、文字が含まれています。

変数を再割り当てすることができ、等号は、代入文ではなく、等号の数学的な感覚です。

定数は、初期化後に再割り当てすることはできません、プログラムの意図の理解を容易にするための定数を使用します。

 

おすすめ

転載: www.cnblogs.com/fqh123/p/10962606.html