識別子と変数 (Java)

1. 識別子

1. パッケージ名、クラス名、メソッド名、パラメータ名、変数名など。これらの記号を識別子と呼びます。

2. 識別子は、文字、数字、アンダースコア_、およびドル記号 $ で構成できます。

3. 識別子を数字で始めることはできず、Java のキーワードにすることもできません。

4. 最初の文字の後には、文字 (A ~ Z または a ~ z)、アンダースコア _、ドル記号 $、または任意の数字を続けることができます。

5. Java では大文字と小文字が区別されるため、myvar と MyVar は 2 つの異なる識別子です。

6. キーワードと予約語を識別子として使用することはできませんが、識別子にキーワードと予約語を含めることはできます。

7. 識別子にはスペースを含めることはできません。

2. 命名規則

1. パッケージ名のすべての文字は小文字である必要があります。例: cn.com.test

2. クラス名およびインターフェイス名の各単語の最初の文字は大文字にする必要があります。例: ArrayList、大きなキャメルケースを使用します。

public class Functions {
    
    }

3. 定数名のすべての文字は大文字で、単語はアンダースコアで接続されます。例: DAY_OF_MONTH 変数名とメソッド名の最初の文字は小文字で、2 番目の単語から各単語の最初の文字は大文字になります。例: lineName、getLingNumber、小さいキャメルケースを使用します

public class Functions {
    
    
    public void demoTest(){
    
    
        System.out.println("公共的方法");
    }
}

4. プログラムを読みやすくするために、プログラムでは、意味のある英単語を使用して識別子を定義するように努める必要があります。たとえば、ユーザー名を表すには userName を使用し、パスワードを表すには userName を使用します。頑張って名前の意味を理解してください

3. 変数

1. 変数の概念

メモリ内の記憶領域

この領域のデータは、同じタイプの範囲内で変化し続けることができます。

変数は、プログラムにおける最も基本的な記憶単位です。変数のタイプ、変数名、保存された値が含まれます

2. 変数の役割

データをメモリに保存するために使用されます

3. 注意事項
  1. Java のすべての変数は使用前に宣言する必要があります
  2. 変数名を使用してこのデータ領域にアクセスします
  3. 変数のスコープ: 変数が定義されている {} のペア内
  4. 変数はそのスコープ内でのみ有効です
  5. 同じ名前の変数を同じスコープ内に定義することはできません。

4. データ型による変数の分類

データの種類ごとに、明確に特定のデータ型 (厳密に型指定された言語) が定義され、異なるサイズのメモリ空間がメモリ内に割り当てられます。

ここに画像の説明を挿入します

補足:変数の分類 - 宣言位置による違い

メソッドの外およびクラス内で宣言された変数はメンバー変数と呼ばれます。

public class User {
    
    
    private String id;
    private String username;
    private String password;

}

メソッド本体内で宣言された変数はローカル変数と呼ばれます。

public class Functions {
    
    
    public void demo(){
    
    
        int a = 10; // a为局部变量
        System.out.println("公共的方法");
        System.out.println(a);
    }
}

ここに画像の説明を挿入します

注: 初期化値に関する 2 つの類似点と相違点は次のとおりです。

  1. 同じ: どちらにもライフサイクルがあります
  2. 例外: ローカル変数は、仮パラメータを除き、明示的に初期化する必要があります。

5. 整数型

バイト、ショート、整数、ロング

  • Java の各整数型には固定のテーブル番号範囲とフィールド長があり、Java プログラムの移植性を確保するために特定の OS の影響を受けません。
  • Java の整数定数のデフォルトは int 型です。long 型定数を宣言する場合は、その後ろに 'l' または 'L' を追加する必要があります。
  • Java プログラムの変数は通常 int 型で宣言されますが、大きな数を表現するのに不十分な場合を除き、long が使用されます
    ここに画像の説明を挿入します
    500MB 1MB = 1024KB 1KB= 1024B B= byte? bit?

ビット: コンピュータ内のストレージの最小単位。バイト: コンピュータの基本的な記憶単位。

6. 浮動小数点型

フロート、ダブル

  1. 整数型と同様に、Java 浮動小数点型にも固定のテーブル番号範囲とフィールド長があり、特定のオペレーティング システムの影響を受けません。
  2. 浮動小数点定数には 2 つの表現があります。
    • 10 進数形式: 例: 5.12 512.0f .512 (小数点が必要)
    • 科学表記法: 5.12e2 512E2 100E-2 など
  3. float: 単精度、仮数は有効数字 7 桁まで正確です。多くの場合、要求を満たす精度が困難です。
  4. double: 倍精度、精度は float の 2 倍です。通常はこのタイプが使われます。
    ここに画像の説明を挿入します

7. 文字の種類

文字

  1. Char型データは、通常の意味での「文字」を表すために使用されます(2バイト)
  2. Java のすべての文字は Unicode エンコーディングを使用するため、文字には文字、中国語、またはその他の書き言葉の文字を格納できます。
  3. 文字変数の表現には 3 つの形式があります。
  • 文字定数は、一重引用符 (' ') で囲まれた 1 つの文字です。例えば:

    char c1 = 'a'; 
    char c2  = '中'; 
    char c3 = '9'
    
  • Java では、エスケープ文字「\」を使用して、次の文字を特殊文字定数に変換することもできます。例えば:

char c3 = '\n'; \\ '\n'表示换行符
  • Unicode 値を直接使用して文字定数を表します: '\uXXXX'。このうち、XXXXは16進数の整数を表します。のように:

    System.out.println("\u6211\u7231\u004a\u0061\u0076\u0061");
    我爱Java
    

4. char型で演算が可能です。すべてUnicodeコードに対応しているからです。

8. ブール型

ブール値

ブール型は論理条件を決定するために使用され、通常はプログラム フロー制御に使用されます。

  • if 条件付き制御ステートメント。
  • while ループ制御ステートメント。
  • do-while ループ制御ステートメント。
  • for ループ制御ステートメント。

ブール型データでは値 true と false のみが許可され、null は許可されません。

  • C 言語とは異なり、0 または 0 以外の整数を使用して false と true を置き換えることはできません。

  • Java 仮想マシンにはブール値専用のバイトコード命令はありません。Java 言語で操作されるブール値は、コンパイル後に Java 仮想マシン内で int データ型に置き換えられます。true は 1、false は 1 で表されます。 0 で表されます。——「Java仮想マシン仕様第8版」

9. 自動型変換

小容量型は自動的に大容量データ型に変換されます。データ型は次のように容量によって並べ替えられます。

ここに画像の説明を挿入します

  1. 複数種類のデータが混在する場合は、すべてのデータを最も容量の大きいデータ型に自動変換して計算します。

  2. byte、short、charは相互に変換されず、計算時に一旦int型に変換されます。

    public class Test2 extends Functions{
          
          
    
        public static void main(String[] args) {
          
          
            byte a = 10;
            char b = 20;
            System.out.println(getType(a+b));
        }
        
        public static String getType(Object obj){
          
          
            return obj.getClass().toString();
        }
    
    }
    ========================
     class java.lang.Integer   
    
  3. ブール型は他のデータ型では演算できません。

  4. 基本データ型の値を文字列 (+) と連結すると、基本データ型の値は自動的に文字列型に変換されます。

public class Test2 extends Functions{
    
    


    public static void main(String[] args) {
    
    
        byte a = 10;
        System.out.println(getType(a+ "hello"));
    }
    public static String getType(Object obj){
    
    
        return obj.getClass().toString();
    }

}
====================
class java.lang.String    

10.文字列型

  1. 文字列は基本データ型ではなく、参照データ型です
  2. 使用法は基本的なデータ型と一致しています。例: String str = "abcd";
  3. 文字列は別の文字列と連結でき、他のタイプのデータを直接連結することもできます。例えば:
str = str + “xyz” ; 
int n = 100;
str = str + n;

11. 強制型変換

自動型変換の逆のプロセスで、大容量のデータ型を小容量のデータ型に変換します。使用する場合は強制文字: () を追加する必要がありますが、精度の低下やオーバーフローが発生する可能性があるため注意してください。

通常、文字列を直接基本型に変換することはできませんが、基本型に対応したラッパークラスを介して文字列を基本型に変換することができます。のように:

String c = "43";
int i = Integer.parseInt(a);

double i = Double.parseDouble(c);
System.out.println(i);

double x = 9.997;
int nx = (int)x;

ブール型は他のデータ型に変換できません。

記事の一部は、Shang Silicon Valley Java チュートリアル資料から引用しています。

おすすめ

転載: blog.csdn.net/weixin_45833112/article/details/125359296