我来我网
https://5come5.cn
您尚未
登录
注册
|
菠菜
|
软件站
|
音乐站
|
邮箱1
|
邮箱2
|
风格选择
|
更多 »
vista
鍙よ壊涔﹂
card
wind
绮夌孩濂抽儙
帮助
统计与排行
无图版
我来我网·5come5 Forum
»
电脑技术
»
程序员之家
»
Java学习笔记
交 易
投 票
本页主题:
Java学习笔记
显示签名
|
打印
|
加为IE收藏
|
收藏主题
|
上一主题
|
下一主题
klo
∷
性别:
∷
状态:
∷
等级:
品行端正
∷
家族:
YD一族
∷
发贴:
473
∷
威望:
0
∷
浮云:
1105
∷
在线等级:
∷
注册时间: 2007-01-10
∷
最后登陆: 2008-06-30
【
复制此帖地址
只看此人回复
】
5come5帮你背单词 [
collaborate
/k
ə
'l
æ
b
ə
reit/
vi. 合作,协作
]
Java学习笔记
Java的流控制 ================================
§4-1 Java流控制的分类
1、分之语句:if-else,break,switch,return。
2、循环语句:while,di-while,for,continue。
3、例外处理语句:try-catch-finally,throw。
4、注释语句(简单介绍)。
4-1-1 分支语句:
分之语句给我们提供了一个控制机制,它的作用就是跳过某些语句不执行,转而去执行特定的语句。
4-1-1-1 条件语句 if-else
格式是: if(boolean-expression)
statement1;
[else
statement2;]
说明:1、布尔表达式boolean-expression是任意一个返回布尔型数据的表达式。
2、每一个单一的语句后面都必须有一个分号——“;”。
3、对于“statement1”和“statement2”两个部分,可以是单一的语句,也可一时复合的语句,对于单一和复合的语句来说,都要用大括号“{”“}”括起来,这样增加了程序的阅读性,也有利于程序的扩充。但要注意:“{”“}”外面没有分号“;”。
4、else子句是可选的,并不是一定要有的。
5、如果boolean表达式的值为真,则执行statement1,否则执行statement2。
6、对于多个if-else语句的选择,格式如下(只举一例):
if (exprression1)
{
statement1;
}
else if (expression2)
{
statement2;
}
…………
else if (expressionM)
{
statementM;
}
else
{
statementN;
}
7、else不能单独作为一个语句,必须和if一起使用,并且是和离它最近的if配对。但是可以通过大括号“{”“}”来改变配对关系。
例4-1 比较两个数的大小,并按照从小到大的次序排列。
public class CompareTwo
{
public static void main ( String args[ ] )
{
double d1 = 23.4 ;
double d2 = 35.1 ;
if( d2 >= d1 )
System.out.println(d2+" >= "+d1) ;
else
System.out.println(d1+" >= "+d2) ;
}
}
运行结果是:
c:\>javac CompareTwo.java
C:\>java CompareTwo
35.1 >= 23.4
例4-2 判断某一年是不是闰年。
做过c/c++的程序已经看到过很多次了,但是现在还是要来说说。
首先,我们应该明确判断闰年的条件是什么?
①、能被4整除,但不能被100整除;
②、能被4整除,又能被100整除。
以上两个条件,任意一个符合都是闰年。
public class LeapYear
{
public static void main( String args[] )
{
int year=[屏蔽]; //method 1
if( (year%4==0 && year%100!=0) || (year%400==0) )
System.out.println(year+" is a leap year.");
else
System.out.println(year+" is not a leap year.");
year=2000; //method 2
boolean leap;
if( year%4!=0 )
leap=false;
else if( year%100!=0 )
leap=true;
else if( year%400!=0 )
leap=false;
else
leap=true;
if( leap==true )
System.out.println(year+" is a leap year.");
else
System.out.println(year+" is not a leap year.");
year=2050; //method3
if( year%4==0)
{
if( year%100==0 )
{
if( year%400==0)
leap=true;
else
leap=false;
}
else
leap=false;
}
else
leap=false;
if( leap==true )
System.out.println(year+" is a leap year.");
else
System.out.println(year+" is not a leap year.");
}
}
运行结果为
C:\>java LeapYear
[屏蔽] is not a leap year.
2000 is a leap year.
2050 is not a leap year.
4-1-1-2 多分支语句 switch
格式是:
switch ( expression )
{
case value1 : statement1 ; break ;
case value2 : statement2 ; break ;
case value3 : statement3 ; break ;
……………………
case valueN : statementN ; break ;
[ default : defaultStatement ; ]
}
大部分说明应该都可以理解,特别要说明的是:
1、case后面的value应该(必须)是常量,并且,所有case后面的value都不应该相同。
2、break是用来中断循环的,但是,对于一些特殊情况,多个不同的case值要执行一组的相同操作数,这时,就可以不用break。
对于后面的一些一句,比较简单,就不多说了。
§4-2 Java循环语句
对于循环语句,始终要记住,一个循环体包含下面四个部分:
第一、初始化(Initialization)部分:一般用来设置一些循环的初始条件和计数器清零等等。
第二、循环体(Body)部分:这一部分是反复循环的一段代码,可以是单一的一条语句,也可以是复合语句。
第三、迭代(Iteration)部分:这一部分是在当前循环结束,下一次循环开始并执行的语句,常常用来使计数器加1或者减1。
第四、终止(Termination)部分:通常是一个布尔表达式,每一次循环要对该表达式求值,以验证是否满足循环终止条件。
和C/C++一样,Java提供的循环语句有:while,do-while,for三个语句。
4-2-1 while 语句用来实现“当型”循环,一般格式是:
[initialization]
while ( termination )
{
body ;
[interation;]
}
“当型”循环的特点是:首先判断循环终止的条件是否满足,如果满足,则执行循环体中的语句,如果不满足,就不执行循环体。
4-2-2 do-while 语句用来实现“直到型”循环,一般格式是:
[initialization]
do
{
body ;
[interation;]
}while (termination);
“直到型”循环的特点是:首先执行循环体,然后计算终止条件,如果结果为“true”,则循环执行大括号中的语句,直到布尔表达式的结果是“false”。
4-2-3 for 语句也是用来实现“当型”循环的,一般格式是:
for ( initialization ; termination ; iteration )
{
body ;
}
for语句的循环最为灵活,最为好用,在执行的时候,首先进行初始化,然后判断终止条件是否满足,如果满足,则执行循环体中的语句,最后执行迭代部分。完成一次循环之后,重新判断终止条件。
对于for语句小括号里面的三个部分,可以任意写(中间的分号“;”不能少!),也可以全部不写,但是,如果全部不写,整个for循环就相当于一个死循环。
§4-3 break语句和continue语句
下面来说说break语句和continue语句。
4-3-1 break 语句
break 语句主要用于多分支选择语句 switch 里面。它的作用是:
1、用在switch里面的时候,break语句用来在执行完一个case分支之后使程序跳出switch语句,即终止seitch语句的执行,让程序switch语句后的第一个语句开始执行。
2、在Java中,可以为每个代码块加一个括号,一个代码块通常用大括号“{”“}”括起来的一段代码。加标号的格式如下:
BlockLabel: { codeBlock }
因此,break语句的第二种使用情况就是跳出它所指定的块,并从紧跟该块的第一条语句处执行。其格式为:
break BlockLabel;
例如:
a: {…… //标记代码块a
b: {…… //标记代码块b
c: {…… //标记代码块c
break b;
…… //will not be executed
}
…… //will not be executed
}
…… //will not be executed
}
…… /execute from here
}
从这里,可以看出Java与C/C++不同,Java中没有goto语句来实现任意的跳转,因为goto语句破坏程序的可读性,而且影响编译的优化。但是从上例可以看出,Java用break来实现goto语句所特有的一些优点。如果break后所指定的标号不是一个代码块的标号,而是一个语句,则这时,break完全实现了goto的功能。不过应该避免这种方式的使用。
4-3-2 continue语句
1、continue语句使用来结束本次循环,跳过循环体中continue后面尚未执行的部分语句,接着进行终止条件的判断,以决定是否继续循环。对于for语句来说,在进行终止条件的判断之前,还要执行迭代语句。它的格式是:
continue ;
2、也可以用continue语句来跳转到括号指明的外层循环中,这时的格式为:
continue outerLable;
例 如 :
outer: for( int i=0; i
{
for( int j=0; j
{
if( j>i )
{
……
continue outer;
}
……
}
……
}
在该例中,当满足j>i的条件时,程序执行完相应的语句后跳转到外层循环,执行外层循环的迭代语句i++;然后开始下一次循环。
§4-4 return语句和注释语句
4-4-1 return 语句
return语句是从当前的方法中退出,返回到调用该方法的语句处继续执行程序。return语句主要有两种格式:
1、return expression
返回一个值给调用该方法的语句,返回值的数据类型,必须与方法声明中的返回值类型一致。也可以使用强制类型转换来使类型一致。
2、retuen
当方法说明中用void声明返回类型为空时,就应该使用这种格式,即不返回任何值。
4-4-2 注释语句
Java中可以采用三种注释方式:
1、 ∥ 用于单行注释。注释从 ∥ 开始,终止于行尾。
2、 /* … */ 用于多行注释。注释从 /* 开始,到 */ 结束,且这种注释不能互相嵌套。
3、 /** … */ 是Java所特有的doc注释。它以/**开始,到*/结束。这种注释主要是为支持JDK工具javadoc而采用的。
本帖最近评分记录:
浮云:5 (by 独飞の孤心)
Posted: 2007-01-15 11:59 |
[楼 主]
octopus
∷
性别:
∷
状态:
∷
等级:
品行端正
∷
发贴:
229
∷
威望:
0
∷
浮云:
1121
∷
在线等级:
∷
注册时间: 2006-01-04
∷
最后登陆: 2008-06-29
【
复制此帖地址
只看此人回复
】
5come5帮你背单词 [
sentence
/'sent
ə
ns/
n. 句子,宣判,判决;vt. 宣判,判决
]
貌似有一本叫《Java学习笔记》的书,还不错!
Posted: 2007-01-15 15:49 |
[1 楼]
快速跳至
|- 站务管理
|- 惩罚,奖励公布区
|- 会员咨询意见区
|- 申请区
|- 已批准申请区
|- 威望和荣誉会员推荐区
|- 5come5名人堂·Hall of Fame
>> 休闲娱乐
|- 灌水乐园 大杂烩
|- 精水区
|- 幽默天地
|- 开怀大笑(精华区)
|- 灵异空间
|- 运动新时空·菠菜交流
|- 动之风.漫之舞
|- 新货上架
|- 古董挖挖
|- 唯美贴图
|- 创意&美化&设计
|- 5COME5头像及签名档图片引用专区
|- 艺术摄影
|- 音乐咖啡屋
|- 音道乐经
>> 热点讨论
|- 工作交流
|- 求职信息
|- 就业精华区
|- 同城联谊
|- 留学专版
|- 情感物语
|- 情感物语精华区
|- 带走一片银杏叶
|- 精华区
|- 新闻直通车
|- 众志成城,抗震救灾
|- 衣食住行
|- 跳蚤市场
|- 旅游出行
>> 学术交流
|- 学业有成
|- 智力考场
|- 考研专版
|- 外语乐园
|- 考试·毕业设计
|- 电子设计·数学建模
|- 学生工作·社团交流·RX
|- 电脑技术
|- 电脑F.A.Q.
|- 软件交流
|- 硬件·数码
|- 程序员之家
|- Linux专区
|- 舞文弄墨
|- 历史&文化
|- 军临天下
|- 军事精华区
|- 财经频道
>> 游戏新干线[电子竞技俱乐部]
|- Blizz@rd游戏特区
|- WarCraft III
|- 魔兽区档案库
|- 魔兽争霸3博彩专区
|- StarCraft(new)
|- 暗黑专区
|- 休闲游戏区
|- PC GAME综合讨论区
|- 实况足球专区
|- Counter-Strike专区
|- TV GAME& 模拟器
|- 网络游戏
>> 资源交流
|- 恋影部落
|- 连续剧天地
|- 综艺开心档
|- 书香小筑
|- 小说发布
|- 资源交流
|- 综艺、体育、游戏资源发布
|- 音乐资源发布区
|- 电影电视剧发布区
|- 字幕园地
我来我网·5come5 Forum
»
程序员之家
Total 0.009391(s) query 5, Time now is:11-24 00:47, Gzip enabled
Powered by PHPWind v5.3, Localized by
5come5 Tech Team
,
黔ICP备16009856号