📄 第四章 流控制1.htm
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0045)http://www.sdjtu.edu.cn/xdjyzx/tech/java8.htm -->
<HTML><HEAD><TITLE>基础教程</TITLE>
<META http-equiv=Content-Language content=zh-cn>
<META http-equiv=Content-Type content="text/html; charset=gb2312">
<META content="web designer" name=keywords>
<META content=阿捷,ajie@tspace.net name=Author><LINK href="第四章 流控制1.files/css.css"
type=text/css rel=stylesheet>
<META content="MSHTML 6.00.2800.1106" name=GENERATOR></HEAD>
<BODY background=第四章 流控制1.files/bg1.jpg>
<TABLE cellSpacing=0 cellPadding=0 width="100%" border=0>
<TBODY>
<TR>
<TD width="13%"></TD>
<TD vAlign=bottom width="66%">
<P align=right><A
href="http://www.sdjtu.edu.cn/xdjyzx/tech/java.htm">返回索引</A> </P></TD>
<TD width="21%">
<P align=center><FONT face="Arial Black" color=#008000 size=5>JAVA</FONT>
</P></TD></TR></TBODY></TABLE>
<HR width="80%" color=#88b838 SIZE=1>
<TABLE cellSpacing=0 cellPadding=0 width="100%" border=0>
<TBODY>
<TR>
<TD width="13%"></TD>
<TD width="77%" bgColor=#ffffff>
<P align=center><B>第四章 流控制</B></P>
<P><FONT
color=#008000>4.1.3break语句</FONT><BR><BR>1.在switch语中,break语句用来终止switch语句的执行。使程序switch语句后的第一个语句开始执行。<BR><BR>2.在Java中,可以为每个代码块加一个括号,一个代码块通常用大括号{}括起来的一段代码。加标号的格式如下:<BR><BR>BlockLabel:{codeBlock}<BR><BR>break语句的第二种使用情况就是跳出它所指定的块,并从紧?该块的第一条语句处执行。其格式为:<BR><BR>break
BlockLabel;<BR><BR>例如:<BR><BR>a:{......//标记代码块a<BR>b:{......//标记代码块b<BR>c:{......//标记代码块c<BR>breakb;<BR>……//willnotbeexecuted<BR>}<BR>……//willnotbeexecuted<BR>}<BR>……//willnotbeexecuted<BR>}<BR>……/executefromhere<BR>}<BR><BR>3.与C、C++不同,Java中没有goto语句来实现任意的跳转,因为goto语句破坏程序的可读性,而且影响编译的优化。但是从上例可以看出,Java用break来实现goto语句所特有的一些优点。如果break后所指定的标号不是一个代码块的标号,而是一个语句,则这时break完全实现goto的功能。不过应该避免这种方式的使用。<BR><BR><FONT
color=#008000>4.1.4返回语句return</FONT><BR><BR>return语句从当前方法中退出,返回到调用该方法的语句处,继续程序的执行。(有关方法的内容,我们将在第六章详细讲)。返回语句有两种格式:<BR><BR>1.return
expression<BR><BR>返回一个值给调用该方法的语句,返回值的数据类型必须与方法声明中的返回值类型一致。可以使用强制类型转换来使类型一致。<BR><BR>2.return<BR><BR>当方法说明中用void声明返回类型为空时,应使用这种格式,不返回任何值。<BR><BR>return语句通常用在一个方法体的最后,以退出该方法并返一个值。Java中,单独的return语句用在一个方法体的中间时,会产生编译错误,因为这时有一些语句执行不到。但可以通过把return语句嵌入某些语句(如if-else)来使程序在未执行完方法中的所有语句时退出,例如:<BR><BR>int
method (int num){<BR>∥return num;∥will cause compile time
error<BR>if(num>0)<BR>return num;<BR>…… ∥may or may not be
executed<BR>∥depending on the value of
num<BR><BR>§4.2循环语句<BR><BR>循环语句的作用是反复执行一段代码,直到满足终止循环条件为止,一个循环一般应包括四部分内容:<BR><BR>1.初始化部分(initialization):用来设置循环的一些初始条件,计数器清零等。<BR><BR>2.循环体部分(body):这是反复循环的一段代码,可以是单一一条语句,也可以是复合语句。<BR><BR>3.迭代部分(iteration):这是在当前循环结束,下一次循环开始执行的语句,常常用来使计数器加1或减1。<BR><BR>4.终止部分(termination):通常是一个布尔表达式,每一次循环要对该表达式求值,以验证是否满足循环终止条件。<BR><BR>Java中提供的循环语句有:while语句,do-while语句和for语句,下面分别介绍:<BR><BR><FONT
color=#008000>4.2.1while语句<BR></FONT><BR>while语句实现"当型"循环,它的一般格式为:<BR><BR>[initialization]<BR>while
(termination){<BR>body;<BR>[iteration;]<BR>}<BR><BR>1.当布尔表达式(termination)的值为true时,循环执行大括号中语句。并且初始化部分和迭代部分是任选的。<BR><BR>2.while语句首先计算终止条件,当条件满足时,才去执行循环中的语句。这是"当型"循环的特点。<BR><BR><FONT
color=#008000>4.2.2do-while语句</FONT><BR><BR>do-while语句实现"直到型"循环,它的一般格式为:<BR><BR>[initialization]<BR>do{<BR>body;<BR>[iteration;]<BR>}while
(termination);<BR><BR>1.do-while语句首先执行循环体,然后计算终止条件,若结果为true,则循环执行大括号中的语句,直到布尔表达式的结果为false。<BR><BR>2.与while语句不同的是,do-while语句的循环体至少执行一次,是"直到型"循环的特点。<BR><BR><FONT
color=#008000>4.2.3for语句</FONT><BR><BR>for语句也用来实现"当型"循环,它的一般格式为:<BR><BR>for
(initialization;termination;iteration){<BR>body;<BR>}<BR><BR>1.for语句执行时,首先执行初始化操作,然后判断终止条件是否满足,如果满足,则执行循环体中的语句,最后执行迭代部分。完成一次循环后,重新判断终止条件。<BR><BR>2.可以在for语句的初始化部分声明一个变量,它的作用域为一个for语句。<BR><BR>3.for语句通常用来执行循环次数确定的情况(如对数组元素进行操作),也可以根据循环结束条件执行循环次数不确定的情况。<BR><BR>4.在初始化部分和迭代部分可以使用逗号语句,来进行多个动作。逗号语句是用逗号分隔的语句序列。例如:<BR><BR>for(i=0,j=10;i<j;i++,j--){<BR>……<BR>}<BR><BR>5.初始化、终止以及迭代部分都可以为空语句(但分号不能),三者均为空的时候,相当于一个无限循环。<BR><BR><FONT
color=#008000>4.2.4continue语句</FONT><BR><BR>1.continue语句用来结束本次循环,跳过循环体中下面尚未执的语句,接着进行终止条件的判断,以决定是否继续循环。对于for语句,在进行终止条件判断前,还要先执行迭代语句。它的格式为:<BR><BR>continue;<BR><BR>2.也可以用continue跳转到括号指明的外层循环中,这时的格式为:<BR><BR>continue
outerLable;<BR><BR>例如:<BR><BR>outer:for(int i=0;i<10;i++){∥外层循环<BR>for(int
j=0;j<20;j++){∥内层循环<BR>if(j>i){<BR>……
continueouter;<BR>}<BR>……<BR>}<BR>……<BR>}<BR><BR>该例中,当满足j>i的条件时,程序执行完相应的语句后跳转至外层循环,执行外层循环的迭代语句i++;然后开始下一次循环。<BR><BR>4.2.5举例<BR><BR>例4.4下例分别用while、do-while和for语句实现累计求和。<BR><BR>public
class Sum{<BR>public static void main(String
args[]){<BR>System.out.println("\n**while statement**");<BR>int
n=10,sum=0;∥initialization<BR>while(n>0){∥termination<BR>sum+=n;∥body<BR>n--;∥iteration<BR>}<BR>System.out.println("sumis"+sum);<BR>System.out.println("\n**do_whilestatement**");<BR>n=0;∥initialization<BR>sum=0;<BR>do{<BR>sum+=n;∥body<BR>n++;∥iteration<BR>}while(n<=10);∥termination<BR>System.out.println("sumis"+sum);<BR>System.out.println("\n**forstatement**");<BR>sum=0;<BR>for(inti=1;i<=10;i++){<BR>∥initialization,termination,iteration<BR>sum+=i;<BR>}<BR>System.out.println("sumis"+sum);<BR>}<BR>}<BR><BR>运行结果为:<BR><BR>C:\>java
Sum<BR><BR>**whilestatement**<BR>sum is 55<BR>**do_while
statement**<BR>sum is 55<BR>**for statement**<BR>sum is
55<BR><BR>可以从中来比较这三种循环语句,从而在不同的场合选择合适的语句。<BR><BR>例4.5求100~200间的所有素数<BR><BR>public
class PrimeNumber{<BR>public static void main(String
args[]){<BR>System.out.println("**prime numbers between 100 and
200**");<BR>intn=0;<BR>outer:for(inti=101;i<200;i+=2){∥outer loop<BR>int
k=15;∥select for convinence for(int
j=2;j<=k;j++){∥innerlop<BR>if(i%j==0)<BR>continue
outer;<BR>}<BR>System.out.print(""+i);<BR>n++;∥outputanewline<BR>if(n<10)∥after10numbers<BR>continue;<BR>System.out.println();<BR>n=0;<BR>}<BR>System.out.println();<BR>}<BR>}<BR><BR>运行结果为:<BR><BR>C:\>java
PrimeNumber<BR><BR>**prime numbers between 100 and 200**<BR>101 103 107
109 113 127 131 137 139 149<BR>151 157 163 167 173 179 181 191 193
197<BR>199<BR><BR>该例通过一个嵌套的for语句来实现。<BR><BR><FONT
color=#008000>§4.3例外处理语句</FONT><BR><BR>例外处理语句包括try、catch、finally以及throw语句。与C、C++相比,例外处理语句是Java所特有的。我们将在第八章作专门的介绍。<BR><BR><FONT
color=#008000>§4.4注释语</FONT><BR><BR>Java中可以采用三种注释方式:<BR><BR>1∥ 用于单行注释。注释从∥开始,终止于行尾。<BR><BR>2/*...*/用于多行注释。注释从/*开始,到*/结束,且这种注释不能互相嵌套。<BR><BR>3/**...*/是Java所特有的doc注释。它以/**开始,到*/结束。这种注释主要是<BR><BR>为支持JDK工具javadoc而采用的。javadoc能识别注释中用标记@标识的一些特殊变量,并把<BR><BR>doc注释加入它所生成的HTML文件。对javadoc的详细讲述可参见附录。<BR></P>
<P>(未完,请继续) </P></TD>
<TD width="10%"></TD></TR></TBODY></TABLE>
<TABLE cellSpacing=0 cellPadding=0 width="100%" border=0>
<TBODY>
<TR>
<TD width="13%"></TD>
<TD width="77%">
<P align=center></P></TD>
<TD width="10%"></TD></TR></TBODY></TABLE>
<HR width="80%" color=#88b838 SIZE=1>
<TABLE cellSpacing=0 cellPadding=0 width="100%" border=0>
<TBODY>
<TR>
<TD width="100%">
<P align=center><A
href="http://www.sdjtu.edu.cn/xdjyzx/tech/java7.htm">上一页</A> <A
href="http://www.sdjtu.edu.cn/xdjyzx/tech/java9.htm">下一页</A> <A
href="http://www.sdjtu.edu.cn/xdjyzx/tech/java8.htm#top"><FONT
face=Arial>GO TOP</FONT></A> </P></TD></TR>
<TR>
<TD width="100%">
<SCRIPT src="第四章 流控制1.files/nease.js"></SCRIPT>
</TD></TR>
<TR>
<TD width="100%">
<P align=center><FONT face=Arial>Copyright © 1999 designed by <A
href="http://page.tspace.net/">web designer</A></FONT><A
onmouseover="window.status='返回网页设计师首页';return true"
href="http://www.sdjtu.edu.cn/xdjyzx/index1.htm"><FONT
style="FONT-SIZE: 9pt"><IMG height=20 src="第四章 流控制1.files/home.gif"
width=20 border=0></FONT></A></P></TD></TR></TBODY></TABLE></BODY></HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -