循环

循环 有(for    while    do...while     foreach)
这3个循环方法运行速度相差无几  例子在循环例子中


for
for 循环的次数一定要给他赋值,就是for循环的次数是固定的,只有在循环的次数在已知的情况下才能使用
for( int i=0; i<10; i++ ){
}


while
while  循环的次数是不确定的  只要满足条件就进入循环,直至循环条件不正确时,不满足条件时不要你进入
while(循环条件){
         循环体;
}


do...while
do...while  循环的次数也是不确定的,满足条件就进,不满足就退出,唯一和while的区别是会先执行一次do...while中的代码
do...while就是先执行代码再进行判断,至少执行1次循环体中的代码,如果满足不了条件就退出
do...while就好像钥匙一样,不管你是不是这扇门的钥匙,都要你试一次,不然无法从外表判断是不是匹配,不匹配就打不开,匹配才让你进入
循环条件必须是boolean   while的括号后面一定要写分号  ;  。
do{
        循环体;
}while(循环条件);


foreach
foreach主要用于遍历数组和集合       foreach只循环这个数组或者集合1遍 
foreach只用于读取,不能进行赋值
for( 类型   item   :   变量名  ){
}


结束循环的语句   break  ,continue ,return,goto,exit()
break 结束整个循环   当循环是多重循环时只跳出本身这个循环 对外面的循环没有任何影响                 
continue结束本次循环,进入下次循环
return 结束当前的函数 进入上一个函数中
exit()会直接终止程序,进入最顶层         exit(0)表示程序正常, exit(1)和exit(-1)表示程序异常退出,exit(2)表示系统找不到指定的文件


http://blog.youkuaiyun.com/youngyoungla/article/details/52446632       下面的5条从这里查询
  1. return返回函数值,是关键字;exit是一个函数。


  2. return是语言级别的,它表示了调用堆栈的返回;而exit是系统调用级别的,它表示了一个进程的结束。
  3. return是函数的退出(返回);exit是进程的退出。


  4. return是C语言提供的,exit是操作系统提供的(或者函数库中给出的)。


  5. return用于结束一个函数的执行,将函数的执行信息传出个其他调用函数使用;exit函数是退出应用程序,删除进程使用的内存空间,并将应用程序的一个状态返回给OS,这个状态标识了应用程序的一些运行信息,这个信息和机器和操作系统有关,一般是 0 为正常退出,非0 为非正常退出。


goto   声明一个标价符后面加:然后再循环中return 或者continue后面抛出这个标识符,就会跳转到这个标识符那一行代码然后再执行goto例子在循环例子中

/**测试foreach*/
public static void testForeach(){
int [] num = { 1,2,3,4,5,6,7,8,9 } ;
for (int i : num) {
i++;
System.out.println(i); //2 3 4 5 6 7 8 9 10
}
for (int i = 0; i < num.length; i++) {
System.out.println(num[i]);//1 2 3 4 5 6 7 8 9
}
}




/**测试return和exit()*/
public static void test(){
testReturn();
System.out.println("aaa");   当结束符是return时这句话打印  System.exit(0)时不打印

}
/**测试return和exit()*/
public static void testReturn(){
int [] num = {1,2,3,4,5,6};
for (int i = 0; i < num.length; i++) {
if(num[i]==3){
// return;
System.exit(0);
}
}
}



测试for 和while 和do_while的运行速度  
public static void testFor(){
long time=System.currentTimeMillis();
String str="a";
for (int i = 0; i < 10000; i++) {
str+=i;
}
System.out.println(System.currentTimeMillis()-time); 运行2次得结果  137  138
}
public static void testWhile(){
long time=System.currentTimeMillis();
String str="a";
int index=0;
while (index<10000){
str+=index;
index++;
}
System.out.println(System.currentTimeMillis()-time); //134  136
}
public static void testDoWhile(){
long time=System.currentTimeMillis();
String str="a";
int index=0;
do {
str+=index;
index++;
} while (index<10000);
System.out.println(System.currentTimeMillis()-time);  140
}


//goto
public static void test() {
one:for (int i = 0; i < 5; i++) {
if(i==2){
continue one;
}
System.out.println(i);

for (int j = 0; j < 4; j++) {
if(j==1){
continue one;
}
System.out.println(j);
}
}
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值