浪潮优派培训java笔记:第4章 流程控制(一)

2014-11-24 03:19:36 · 作者: · 浏览: 0

第4章 流程控制

4.1.1if-else语句语法

public class IfElse {

public static void main(Stringargs[]) {

boolean bl = true;

if (bl)

System.out.println("true");

else

System.out.println("false");

}

}

如果向上面这样只有两个分支,且有返回值的情况。则有一种更简洁的写法:bl true:false

如果在方法中,直接returnbl。消除代码冗余。

4.1.2 switch语句语法

switch(exp){ //表达式exp的返回值必须是下述几种类型之一:int, byte, char, short;

case const1: //case子句中的值constant必须是常量,且所有case子句中的值应是不同的;

statement1;

break;

case const2:

statement2;

break;

… …

case constN:

statementN;

break;

[default: // default子句是可选的,default不一定被执行到。但程序应该有个最终出口。

statement_dafault;

break;]

}

break语句用来在执行完一个case分支后使程序跳出switch语句块,即终止switch语句的执行(在一些特殊情况下,多个不同的case值要执行一组相同的操作,这时可以不用break)。

规范:每种情况最好都有break;

default最好有。

案例分析:

int i = 2;

switch (i) {

default:

System.out.println("default");

case 1:

System.out.println("111");

break;

case 2:

System.out.println("222");

break;

i=2时输出222

i=3时则输出default

111

上述案例的default语句没有break,所有会继续运行下面的程序并且不用匹配case,直到遇到break而终止。

如果没有合适的选项,则认为default是唯一的出口,然后直到遇到第一个break跳出为止。

4.1.3 while语句

while (条件判断) {

 执行语句

}

“条件判断”表示任何一个布尔表达式。当“条件判断”为true时,进入while,否则退出while。

4.1.4 do-while语句

do{

 执行语句

} while (条件判断); //注意用分号结尾!

首先执行一次,再进行条件判断;

没有循环体的while和do-while语句示例:

while(i==j){}

while(i==j);

do;while(i==j);

4.1.6for语句

for(初始化表达式;条件表达式;操作表达式)

{

执行语句

}

当执行语句只有一条时,大括号可以省略;

可以这么写:for( ; ; ) ,相当于一个无限循环(dead loop);

【for循环的趣味应用】编写打印下列图形的程序:

(1) (2) (3)

# * * * * * * * $

# # * * * * * $ $ $

# # # * * * $ $ $ $ $

# # # # * $ $ $

$

[解答]:

public class Test_17_1 {

public static voidmain(String[] args) {

int i, j;

for (i = 1; i<= 4; i++) {

for (j =1; j <= i; j++) {

System.out.print("#");

}

System.out.println();

}

}

}

public class Test_17_2 {

public static voidmain(String[] args) {

int i, j, k;

for (i = 0; i< 4; i++) {

for (k =0; k < i; k++) {

System.out.print(" ");

}

for (j =0; j <= 6 - 2 * i; j++)

System.out.print("*");

System.out.println();

}

}

}

public class Test_17_2 {

public static void main(String[]args) {

int i = 0, blank, j,star, input = 5;// input是输入的行数

String s = "";

for (i = 0; i

blank =Math.abs(i - input / 2);