控制执行流程的理解二

1、Foreach语法

foreach语法,表示不必创建int变量去对由访问项构成的序列进行计数,foreach将自动产生每一项。任何返回一个数组的方法都可以使用foreach。foreach还可以用于任何Iterable对象。
许多for语句都会在一个整型值序列中步进,例如:for(int  i = 0;i < 100; i++),对于这些语句,foreach语法将不起作用,除非先创建一个int数组。为了简化这些任务,我们在net.mindview.util.Range包中创建了一个名为range()的方法,它可以自动的生成恰当的数组。例如:
for(int i : range(10))  //0....9
for(int i : range(5,10))  //5...9
for(int i : range(5,20,3))   //5...20   step 3
printnb(i);
print();
range()方法已经被重载,重载表示相同的方法名可以具有不同的参数列表。range()的第一种重载形式是从0开始产生值,直至范围的上限,但不包括该上限。第二种形式从第一个值开始产生值,直至比第二个值小1的值为止。第三种形式有一个步进值,因此它每次的增量为该值。range()是所谓生成器的一个非常简单的版本。
注意,尽管range()使得foreach语法可以适用于更多的场合,并且这样做似乎可以增加可读性,但是它的效率会稍许降低,因此如果您在做性能调优,也许应该使用仿真器来做评价,它是一种可以度量代码性能的工具。
除了print()之外,我们还使用了printnb()。printnb()方法不会换行,因此可以使用它将一行拆分成多个片段输出。
foreach语法不仅在录入代码时可以节省时间,更重要的是,它阅读起来也要容易的多,它说明您正在努力做什么,而不是给出你正在如何做的细节。
2、return
在Java中有多个关键词表示无条件分支,它们只是表示这个分支无需任何测试即可发生。这些关键词包括return、break、continue和一种与其他语言中的goto类似的跳转到标号语句的方式。
return关键词有两方面的用途:一方面指定一个方法返回什么值(假设它没有void返回值),另一方面它会导致当前的方法退出,并返回那个值。
如果在返回void的方法中没有return语句,那么在该方法的结尾处会有一个隐式的return,因此在方法中并非总是必须要有一个return语句。但是,如果一个方法声明它将返回void之外的其他东西,那么必须确保每一条代码路径都将返回一个值。

转载于:https://www.cnblogs.com/zhishuiyushi/articles/11138496.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值