在 Java 中,使用變量來存儲值,每一個變量都有一個類型(type)。在聲明變量時,先指定變量的類型,而後是變量名,變量的聲明以分號結束。這裏有一些聲明變量的示例:java
double salary; int vacationDays; long earthPopulation; boolean done;
變量名必須是一個以字母開頭並由字母或數字構成的序列。ide
儘管 $ 是一個合法的 Java 字符,但不要在你本身的代碼中使用這個字符。它只用在 Java 編譯器或其餘工具生成的名字中。工具
未來的版本可能使用_做爲通配符。設計
與大多數程序設計語言相比,Java 中的「字母」 和 「數字」的範圍更大。字母包括 'A' ~ 'Z'、'a' ~ 'z'、'_' 、'$' 或在某種語言中表示字母的 Unicode 字符。例如,德國的用戶能夠在變量名中使用字母 'ä';希臘人能夠用 π。一樣,數字包括 '0' ~ '9' 和在某種語言中表示數字的任何 Unicode 字符;但 '+' 和 '©’ 這樣的符號不能出如今變量名中,空格也不行。code
若是想要知道哪些 Unicode 字符屬於 Java 中的 「字母」,可使用 Character 類的 isJavaIdentifierStart 和 isJavaIdentifierPart 方法來檢查。字符串
boolean isIdentifier = false; isIdentifier = Character.isJavaIdentifierStart(' '); System.out.println(isIdentifier); // 輸出 false isIdentifier = Character.isJavaIdentifierStart('+'); System.out.println(isIdentifier); // 輸出 false isIdentifier = Character.isJavaIdentifierStart('©'); System.out.println(isIdentifier); // 輸出 false isIdentifier = Character.isJavaIdentifierStart('ä'); System.out.println(isIdentifier); // 輸出 true isIdentifier = Character.isJavaIdentifierStart('π'); System.out.println(isIdentifier); // 輸出 true isIdentifier = Character.isJavaIdentifierStart('$'); System.out.println(isIdentifier); // 輸出 true isIdentifier = Character.isJavaIdentifierStart('_'); System.out.println(isIdentifier); // 輸出 true isIdentifier = Character.isJavaIdentifierPart(' '); System.out.println(isIdentifier); // 輸出 false isIdentifier = Character.isJavaIdentifierPart('+'); System.out.println(isIdentifier); // 輸出 false isIdentifier = Character.isJavaIdentifierPart('©'); System.out.println(isIdentifier); // 輸出 false isIdentifier = Character.isJavaIdentifierPart('ä'); System.out.println(isIdentifier); // 輸出 true isIdentifier = Character.isJavaIdentifierPart('π'); System.out.println(isIdentifier); // 輸出 true isIdentifier = Character.isJavaIdentifierPart('$'); System.out.println(isIdentifier); // 輸出 true isIdentifier = Character.isJavaIdentifierPart('_'); System.out.println(isIdentifier); // 輸出 true
能夠在一行中聲明多個變量:編譯器
int i, j; // 都是整型變量
不提倡使用這種風格。逐一聲明每個變量能夠提升程序的可讀性。it
聲明一個變量以後,必須用賦值語句對變量進行顯式初始化,千萬不要使用未初始化的變量。io
int vacationDays; System.out.println(vacationDays); // 錯誤,變量沒有初始化
想要對一個已經聲明過的變量進行賦值,只須要將變量名放在等號(=)左側,相應取值的 Java 表達式放在等號的右側。編譯
int vacationDays; vacationDays = 12;
也能夠將變量的聲明和初始化放在同一行中。
int vacationDays = 12;
在 Java 中,變量的聲明儘量地靠近第一次使用的地方,這是一種良好的程序編寫風格。
從 Java 10 開始,對於局部變量,若是能夠從變量的初始值推斷出它的類型,就再也不須要聲明類型。只須要使用關鍵字 var 而無需指定類型:
var vacationDays =12; // vacationDays 是整型變量 var geeting = "Hello"; // greeting 是一個字符串
在 Java 中,常量就是值不變的變量。利用關鍵字 final 指示常量。
public class Constans { public static void main(String[] args) { final double CM_PRE_INCH = 2.54; double paperWidth = 8.5; double paperHeight = 11; System.out.println("Paper size centimeters:" + + paperWidth * CM_PRE_INCH + " by " + paperHeight * CM_PRE_INCH); } }
關鍵字 final 表示這個變量只能被賦值一次。一旦被賦值以後,就不可以再更改了。習慣上,常量名使用全大寫。
在 Java 中,常常但願某個常量能夠在一個類中的多個方法使用,一般將這些常量稱爲類常量(class constant)。可使用關鍵字 static final
設置一個類常量。
public class Constans { public static final double CM_PRE_INCH = 2.54; public static void main(String[] args) { double paperWidth = 8.5; double paperHeight = 11; System.out.println("Paper size centimeters:" + + paperWidth * CM_PRE_INCH + " by " + paperHeight * CM_PRE_INCH); } }
類常量位於 main 方法的外部。在同一個類的其餘方法也可使用這個常量。若是一個常量被聲明爲 public,那麼其餘類的方法也可使用這個常量。
枚舉類型包括有限個命名的值。例如: enum Size{SMALL, MEDIUM, EXTRA_LARGE};
聲明這種類型的變量: Size s = Size.MEDIUM;
Size 類型的變量只能存儲這個類型聲明中給定的某個枚舉值,或者特殊值 null。null 表示這個變量沒有設置任何值。