java表达式,语句和块

来源:互联网 发布:可可网络验证eno破解 编辑:程序博客网 时间:2024/04/27 17:51

现在你已经明白了变量和操作符,下面是时候学习表达式,语句和块了。操作符可能用于表达式中来计算值。表达式是语句的核心部分,而语句可以被分成块。


表示式(Expressions)

一个表达式是由变量、操作符以及方法调用根据语言语法规范所组成的结构,计算结果为单个值。你已经看过表达式的例子了,如下面的粗体字部分:

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

  • int result = 1 + 2;  //result现在是3
  • if (value1 == value2)
  • System.out.println("value1 == value2");

表达式的返回值的数据类型取决于表达式中所使用的元素。表达式 cadence = 0返回一个int类型,因为赋值操作符将返回一个与其左侧操作数类型相同的值。在这个例子中,cadence是一个int类型。正如你从其他的表达式中看到的那样,一个表达式也可以返回其他的值,例如boolean或者String。

Java程序设计语言允许你用各种较小的表达式来构建一个复合表达式,只要表达式中各部分的数据类型相互匹配。下面是一个复合表达式的例子:

  • 1 * 2 * 3

在这个特殊的例子中,表达式计算的顺序并不重要,因此乘法计算的结果与乘数的顺序无关,不论表达式的顺序如何,结果总是相同的。但是这并不适用于所有的表达式。例如线面的表达式会因为你首先执行加法运算还是除法运算而产生不同的结果:

  • x + y / 100    //语义含糊

如果你没有明确指出将要执行的操作的顺序,它的顺序就依赖于表达式中操作数的优先级。具有较高优先级的操作符将会被先计算。例如除法运算符比加法运算符的优先级高,因此,下面的语句是等价的:

  • x + y / 100
  • x + (y / 100)      //语义明确,建议使用

但写复合表达式时,应该使用括号明确指出哪个操作符应该首先倍计算。这种做法可以使代码易于阅读和维护。


语句(Statements)

语句大致等同于自然语言中的句子。一条语句组成一个完整的执行单元。以下类型的表达式可以通过使用分号(;)终止而作为一条语句:

  • 赋值表达式
  • 使用++或者--
  • 方法调用
  • 对象创建表达式

一些语句被称为表达式语句,这里有一些例子:

  • // 赋值语句
  • aValue = 8933.234;
  • // 增量语句
  • aValue++;
  • // 方法调用语句
  • System.out.println("Hello World!");
  • // 对象创建语句
  • Bicycle myBike = new Bicycle();

除了表达式语句,还有两种其他的语句:声明语句和控制流语句。声明语句用于声明一个变量,你已经看到很多声明语句的例子:

  • // 声明语句
  • double aValue = 8933.234;

最后,控制流语句用于调节语句执行的顺序,你将会在下个部分学习控制流语句。


块(Blocks)

块由位于两个大括号之间的0个或者多个语句的组合,可以用于单个语句允许使用的任何地方。下面的例子BlockDemo,说明了如何使用块:

class BlockDemo {    public static void main(String[] args) {        boolean condition = true;        if (condition) { // 块1开始            System.out.println("Condition is true.");        } //块1结束        else { //块2开始            System.out.println("Conditon is false.");        } //块2结束    }}

原文地址:http://docs.oracle.com/javase/tutorial/java/nutsandbolts/expressions.html

0 0
原创粉丝点击