Java變數和數據類型

變數是一個記憶體位置的名稱。 java中有三種類型的變數:局部變數實例變數靜態變數。java中有兩種類型的數據類型:原始數據類型非原始數據類型

變數

變數是在內存中分配的保留區域的名稱。換句話說,它是記憶體位置的名稱。這意味著它的值可以改變。

int data=50;// 這裏 data 就是一個變數。

變數類型

java中有三種類型的變數:

  • 局部變數
  • 實例變數
  • 靜態變數

1)局部變數

在方法內聲明的變數稱為局部變數。

2)實例變數

在類中聲明但在方法外部的變數稱為實例變數。但它不被聲明為靜態(未加static修辭符)。

3)靜態變數

被聲明為static的變數(加static修辭符)稱為靜態變數。它不能是局部的。

我們將在下一章中詳細學習這些變數。

下麵看幾個示例來瞭解java中的變數類型。

class A{
    int data=50;//實例變數
    static int m=100;// 靜態變數
    void method(){
        int n=90;//局部變數

    }
}//end of class

Java數據類型

數據類型表示要存儲在變數中的不同類型的值。 在Java中,有兩種類型的數據類型:

  • 原始數據類型
  • 非原始數據類型

數據類型 默認值 默認長度
boolean false 1 bit
char '\u0000' 2 byte
byte 0 1 byte
short 0 2 byte
int 0 4 byte
long 0L 8 byte
float 0.0f 4 byte
double 0.0d 8 byte

為什麼char在java中使用2個位元組以及什麼是\u0000?

這是因為java使用Unicode系統而非ASCII碼系統編碼。 \u0000是Unicode系統的最低範圍。要瞭解有關Unicode的詳細說明,請訪問下一頁。

Java變數示例:兩個數字相加

class Simple{
    public static void main(String[] args){
        int a = 10;
        int b = 10;
        int c = a + b;
        System.out.println(c);
    }
}

輸出結果:

20

Java變數示例:加寬

class Simple{
    public static void main(String[] args){
        int a=10;
        float f=a;
        System.out.println(a);
        System.out.println(f);
    }
}

輸出結果:

10
10.0

Java變數示例:縮小(轉換)

class Simple{
    public static void main(String[] args){
        float f=10.5f;
        //int a=f;//Compile time error
        int a=(int)f;
        System.out.println(f);
        System.out.println(a);
    }
}

輸出結果:

10.5
10

Java變數示例:溢出

class Simple{
    public static void main(String[] args){
        //Overflow
        int a=130;
        byte b=(byte)a;
        System.out.println(a);
        System.out.println(b);
    }
}

輸出結果:

130
-126

Java變數示例:較低類型相加

class Simple{
    public static void main(String[] args){
        byte a=10;
        byte b=10;
        //byte c=a+b;//Compile Time Error: because a+b=20 will be int
        byte c=(byte)(a+b);
        System.out.println(c);
    }
}

輸出結果:

20

上一篇: Java虛擬機內部體系結構 下一篇: Java Unicode編碼系統