Java™ 教程(表達式、語句和塊)

表達式、語句和塊

如今你已瞭解變量和運算符,如今是時候瞭解表達式、語句和塊,運算符可用於構建計算值的表達式,表達式是語句的核心組件,語句能夠分組爲塊。編程

表達式

表達式是由變量、運算符和方法調用組成的構造,它是根據語言的語法構造的,其值爲單個值,你已經看過表達式的示例,以下面所示:segmentfault

int cadence = 0;
anArray[0] = 100;
System.out.println("Element 1 at index 0: " + anArray[0]);

int result = 1 + 2; // result is now 3
if (value1 == value2) 
    System.out.println("value1 == value2");

表達式返回的值的數據類型取決於表達式中使用的元素,表達式cadence = 0返回一個int,由於賦值運算符返回與其左側操做數相同的數據類型的值,在這種狀況下,cadence是一個int。從其餘表達式中能夠看出,表達式也能夠返回其餘類型的值,例如booleanString編程語言

Java編程語言容許你從各類較小的表達式構造複合表達式,只要表達式的一部分所需的數據類型與另外一部分的數據類型匹配,如下是複合表達式的示例:code

1 * 2 * 3

在此特定示例中,計算表達式的順序並不重要,由於乘法的結果與順序無關,結果老是相同的,不管你採用哪一種順序進行乘法運算,可是,並不是全部表達都是如此,例如,如下表達式給出不一樣的結果,具體取決於你是先執行加法仍是除法運算:對象

x + y / 100    // ambiguous

你可使用一對括號確切指定表達式的計算方式:(,例如,要使前一個表達式明確,你能夠編寫如下內容:rem

(x + y) / 100  // unambiguous, recommended

若是你沒有明確指出要執行的操做的順序,則順序由分配給表達式中使用的運算符的優先級肯定,首先評估具備更高優先級的運算符。例如,除法運算符的優先級高於加法運算符,所以,如下兩個語句是等效的:get

x + y / 100

x + (y / 100) // unambiguous, recommended

在編寫複合表達式時,要明確並用括號表示應首先評估哪些運算符,這種作法使代碼更易於閱讀和維護。it

語句

語句大體至關於天然語言中的句子,語句造成一個完整的執行單元,經過使用分號(;)終止表達式,能夠將如下類型的表達式轉換爲語句。io

  • 賦值表達式
  • 任何使用++--
  • 方法調用
  • 對象建立表達式

這些語句稱爲表達式語句,如下是表達式語句的一些示例。class

// assignment statement
aValue = 8933.234;
// increment statement
aValue++;
// method invocation statement
System.out.println("Hello World!");
// object creation statement
Bicycle myBike = new Bicycle();

除了表達式語句以外,還有另外兩種語句:聲明語句和控制流語句,聲明語句聲明一個變量,你已經看過不少聲明語句的例子:

// declaration statement
double aValue = 8933.234;

最後,控制流語句調節語句執行的順序,你將在下一節「控制流語句」中瞭解控制流語句。

塊是一對花括號之間的一組零個或多個語句,能夠在容許單個語句的任何位置使用,如下示例BlockDemo說明了塊的使用:

class BlockDemo {
     public static void main(String[] args) {
          boolean condition = true;
          if (condition) { // begin block 1
               System.out.println("Condition is true.");
          } // end block one
          else { // begin block 2
               System.out.println("Condition is false.");
          } // end block 2
     }
}

上一篇:運算符

下一篇:控制流語句

相關文章
相關標籤/搜索