Java-控制流语句

来源:互联网 发布:矩阵a与b相似,a e与b e 编辑:程序博客网 时间:2024/05/27 14:16

1. Foreach语法

不必创建int变量去对由访问项构成的序列进行计数,foreach将自动产生每一项。

for(float x : f)

定义了一个float类型的变量x,继而将每一个f的元素赋值给x。

任何返回一个数组的方法都可以使用foreach。

//String 类有一个方法toCharArray(),它返回一个char数组,因此可以很容易地像下面这样迭代在字符串里面的所有字符。public class ForEachString{    public static void main(String[] args){        for(char c : "An African Swallow".toCharArray()){            System.out.println(c + " ");        }    }} /* Output:A n A f r i c a n S w a l l o w*///:~

foreach语句是java5的新特征之一,在遍历数组、集合、Iterable对象方面,为开发人员提供了极大的方便。foreach可以用于任何Iterable对象。

Iterable对象

Iterator是迭代器类,而Iterable是接口。
好多类都实现了Iterable接口,这样对象就可以调用iterator()方法。

许多for语句都会在一个整数值序列中步进:

for(int i = 0;i < 100;i++)

而这对foreach语法不起作用。 如果要使用foreach,需要在net.mindview.util.Range包中创建一个名为range()的方法,它可以自动地生成恰当的数组。

import static net.mindview.util.Range.*;import static net.mindview.util.Print.*;public class ForEachInt{    public static void main(String[] args){        //range()方法已经被重载,重载表示相同的方法名可以具有不同的参数列表(range()是所谓)        for(int i : range(10)){ //0..9            //printnb()方法不会换行,可以使用它将一行拆分成多个片段输出            System.out.printnb(i + "");         }        print();        for(int i : range(5, 10)){ //5..9            System.out.printnb(i + "");        }        print();        for(int i : range(5, 20, 3)){ //5..20 step 3            System.out.printnb(i + "");        }        print();    }} /* Output:0 1 2 3 4 5 6 7 8 95 6 7 8 95 8 11 14 17*///:~

2. 无条件分支

无条件分支:表示这个分支无需任何测试即可发生。包括return、break、continue。

break: 强行退出循环,不执行循环中的剩余部分。
continue:停止执行当前的迭代,然后退回循环起始处,开始下一次迭代。

无线循环的两种形式:for(;;) 和 while(true)。

0 0
原创粉丝点击