`

break continue return

    博客分类:
  • JAVA
 
阅读更多

package com.hna;

import org.junit.Ignore;
import org.junit.Test;


public class CommonTest{

	
	/**
	 * break 跳出多层循环
	 * 外层的循环条件表达式的结果可以受到里层循环体代码的控制
	 */
	@Test
	@Ignore
	public void testBreak(){
		int arr[][] = {{1,2,3},{4,5,6,7},{9}};
		boolean found = false;
		for(int i=0;i<arr.length && !found;i++)	{
				for(int j=0;j<arr[i].length;j++){
					System.out.println("i=" + i + ",j=" + j);
					if(arr[i][j]  == 5) {
						found = true;
						break;
					}
				}
			} 

	}
	/**
	 * break 只能跳出第一层for循环,而后继续外层循环
	 */
	@Test
//	@Ignore
	public void testBreak2(){
		int arr[][] = {{1,2,3},{4,5,6,7},{9}};
		for(int i=0;i<arr.length;i++)	{
				for(int j=0;j<arr[i].length;j++){
					System.out.println("i=" + i + ",j=" + j);
					if(arr[i][j]  == 5) {
						break;
					}
				}
			} 
	}
	
	/**
	 * 在外面的循环语句前定义一个标号,然后在里层循环体的代码中使用带有标号的break 语句,即可跳出外层循环
	 */
	@Test
	@Ignore
	public void testBreak3(){
		ok:
			for(int i=0;i<10;i++)	{
				for(int j=0;j<10;j++)		{
					System.out.println("i=" + i + ",j=" + j);
					if(j == 5) break ok;
				}
			} 

	}
}

 

package com.hna;


/**
 * 
 * @author lixueli
 * break跳出for循环继续执行for循环下面的方法
 * return 跳出整个方法
 * continue 跳出本次循环继续下次循环
 */
public class ReturnBreakTest {
	public static void main(String [] args){
		 print();
		 System.out.println("Print end!");
	}
	
	public static void print(){
		 int num=10;
		  for(int i=0;i<num;i++){
			  System.out.println(i);
			  if(i==2)
				  continue;//替换break,return
			  System.out.println("i="+i);
		  }
		  System.out.println("Print starting!");
	}
}
 
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics