Java 程序是由语句组成的。语句能够通过创建和操作变量、对变量赋值并控制这些操作的执行流程来描述运算。语句通常会被组织成代码段,即花括号中的一系列语句。
声明语句:创建某种类型的变量并用标识符为其命名。
赋值语句:将(由表达式产生的)某种类型的数值赋予一个变量。Java 还有一些隐式赋值的语法可以使某个变量的值相对于当前值发生变化,例如将一个整型值加1。
条件语句:能够简单地改变执行流程——根据指定的条件执行两个代码段之一。
循环语句:更彻底地改变执行流程——只要 条件为真就不断地反复执行代码段中的语句。口调用和返回语句:和静态方法有关,是改变执行流程和代码组织的另一种方式
? 程序就是由一 系列声明、赋值、条件、循环、调用和返回语句组成的。一般来说代码的结构都是嵌套的:一个条件语句或循环语句的代码段中也能包含条件语句或是循环语句。例如,rank(中的while循环就包含一个if语句。接下来,我们逐个说明各种类型的语句。
? 声明语句将一个变量名 和一个类型在编译时关联起来。Java 需要我们用声明语句指定变量的名称和类型。这样,我们就清楚地指明了能够对其进行的操作。Java是一种强类型的语言,因为Java .编译器会检查类型的一致性(例如,它不会允许将布尔类型和浮点类型的变量相乘)。变量可以声明在第一次使用之前的任何地方-般我们都在首次使用该变量的时候声明它。变量的作用域就是定义它的地方,一般由相同代码段中声明之后的所有语句组成。
? 赋值语句将(由一个表达式定义的)某个数据类型的值和一个变量关联起来。在Java中,当我们写下C=a+b时,我们表达的不是数学等式,而是一个操作, 即令变量c的值等于变量a的值与变量b的值之和。当然,在赋值语句执行后,从数学上来说c的值必然会等于a+b,但语句的目的是改变c的值(如果需要的话)。赋值语句的左侧必须是单个变量,右侧可以是能够得到相应类型的值的任意表达式。
大多数运算都需要用不同的操作来处理不同的输人。在Java中表达这种差异的一种方法是if语句:
if (<boolean expression>) { <block statements> }
? 这种描述方式是一种叫做模板的形式记法,我们偶尔会使用这种格式来表示Java的语法。尖括号(<)中的是我们已经定义过的语法,这表示我们可以在指定的位置使用该语法的任意实例。在这里, 表示-一个布尔表达式,例如一个比较操作。表示一段Java语句。我们也可以给出 和 的形式定义。不过我们不想深人这些细节。if 语句的意义不言自明:当且仅当布尔表达式的值为真(true)时代码段中的语句才会被执行。以下if-else语句能够在两个代码段之间作出选择:
if(<boolean expression>) { <block statements> }
else { <block statements> }
许多运算都需要重复。Java 语言中处理这种计算的基本语句的格式是:
while (<boolean expression>) { <block statements> }
? while语句和if语句的形式相似(只是用while代替了if),但意义大有不同。当布尔表达式的值为假( false )时,代码什么也不做:当布尔表达式的值为真( true )时,执行代码段(if一样),然后再次检查布尔表达式的值,如果仍然为真,再次执行代码段。如此这般,只要布尔表达式的值为真,就继续执行代码段。我们将循环语句中的代码段称为循环体。
有些情况下我们也会需要比基本的if和while语句更加复杂的流程控制。相应地,Java 支持在while循环中使用另外两条语句:
break语句,立即从循环中退出;
continue语句,立即开始下- -轮循环。
程序有很多种写法,我们追求清晰、优雅和高效的代码。这样的代码经常会使用以下这些广为流传的简便写法。
可以将声明语句和赋值语句结合起来,在声明(创建)一个变量的同时将它初始化。例如,int i = 1;创建了名为i的变量并赋予其初始值1。最好在接近首次使用变量的地方声明它并将其初始化(为了限制它的作用域)。
当希望一个变量的值相对于其当前值变化时,可以使用一些简便的写法。
递增/递减运算符,++i; 等价于i=i+1;且表达式为i+1。类似地,–1; 等价于i=i-1;i++和i–的意思相同,只是表达式的值为i的值。
其他复合运算符,在赋值语句中将一个二元运算符写在等号之前,等价于将左边的变量放在等号右边并作为第一个操作数。例如,i/=2等价于i=i/2;。注意,i+=1等价于i =i + 1; (以及++i;)。
如果条件或循环语句的代码段只有一- 条语句,代码段的花括号可以省略。
很多循环的模式都是这样的:初始化一个索引变量,然后使用while循环并将包含索引变量的表达式作为循环的条件,while 循环的最后一条语句会将索引变量加 1。使用Java的for语句可以更紧凑地表达这种循环:
for (<initialize>; <boolean expression>; <increment>)
{
<b1ock statements>
}
Java 语句
语句 | 示例 | 定义 |
---|---|---|
声明语句 | int 1; | 创建一个指定类型的变量并用标识符命名 |
赋值语句 | a=b+3; | 将某一数据类型的值赋予一个变量 |
声明并初始化 | doule c= 3.14159265; | 在声明时赋予变量初始值 |
隐式赋值 | ++i | i=i+1 |
条件语句(if) | if (x <0)x=-x; | 根据布尔表达式的值执行一条语句 |
条件语句(if-else) | if (x <0) max=x; else max=y; | 根据布尔表达式的值执行两条语句中的一条 |
循环语句(while) | while(i<5) i=2*i; | 执行语句,直至布尔表达式的值变为假(false ) |
循环语句(for) | for(int i=0;i<5;i++) sum+=i; | while语句的简化版 |
调用语句 | int key=study.read(); | 调用另一个方法 |
返回语句 | return false; | 从方法中返回 |