您的位置 首页 java

Java中break 和 continue,while和do while区别,这些你知道吗?

1 break 和 continue

break

中断、跳出 switch 和 循环

 continue

继续进入循环下一轮执行

break和continue

项目:day0402_break和continue

类:day0402.Test1

package day0402;

public class Test1 {

public static void main(String[] args) {

System. out .println(“nn—————“);

f1 ();

System. out .println(“nn—————“);

f2 ();

}

private static void f1() {

// 随机浮点数,[0,1)

//double d = Math.ran do m();

//System.out.println(d);

// >0.999

//i变量用来计次

for ( int i=1; ;i++) {

double d = Math. random ();

if (d>0.999) {

System. out .println(“第”+i+”次:”+d);

break ;

}

}

//System.out.println(“循环已经结束”);

}

private static void f2() {

//打印1到100,跳过尾数3,5,7

for ( int i=1;i<=100;i++) {

int y = i%10;

if (y==3 || y==5 || y==7) {

continue ;

}

System. out .println(i);

}

}

}

2 循环命名

 内层循环中,控制外层循环 break 或 continue

需要对外层循环命名

outer:

for() {

for() {

break outer;

continue outer;

}

}

质数

输入一个整数,判断是否是质数

2,3,5,7,11,13,17,19,23…

项目:day0403_质数

类:day0403.Test1

package day0403;

import java.util.Scanner;

public class Test1 {

public static void main(String[] args) {

System. out .print(“输入质数:”);

int n = new Scanner(System. in ).nextInt();

//调用f()方法,判断n的值是否是质数

f (n);

}

private static void f( int n) {

if (n<2) {

System. out .println(n+”不是质数”);

return ;

}

if (n == 2) {

System. out .println(“2是质数”);

return ;

}

//在2到1+ n开方范围,

//找能把n 整除 的值

//找到,n不是质数

//找不到,n是质数

double max = 1+ Math. sqrt (n);

for ( int i=2; i<max; i++) {

//n能不能被i整除

if (n%i == 0) {

System. out .println(n+”不是质数”);

return ;

}

}

//判断了所有的值,没有能整除的

System. out .println(n+”是质数”);

}

}

求n内质数的数量

Test2

package day0403;

import java.util.Scanner;

public class Test2 {

public static void main(String[] args) {

System. out .println(

“输入整数n,求n内质数的数量”);

int n = new Scanner(System. in ).nextInt();

f (n);

}

private static void f( int n) {

if (n<2) {

System. out .println(“没有质数”);

return ;

}

if (n==2) {

System. out .println(“有1个质数”);

return ;

}

//定义计数变量

int count = 1;//已知有一个质数

outer: //从3到n寻找质数

for ( int i=3; i<=n ;i++) {

//判断i是否是质数

double max = 1+ Math. sqrt (i);

for ( int j=2; j<max; j++) {//在2到<max,找能把i整除的数

if (i%j == 0) {//i被j整除,i不是质数

//跳到i++,继续判断下一个i值

continue outer;

}

}

//内层j循环结束,i是质数

count++;

}

System. out .println(n+”内质数的数量:”+count);

}

}

3

 先判断,再执行

while (执行条件) {

代码

}

4 do-while

 先执行,再判断

 至少执行一次

do {

代码

} while(执行条件);

while

项目:day0404_while循环

类:day0404.Test1

package day0404;

public class Test1 {

public static void main(String[] args) {

System. out .println(“nn—————-“);

f1 ();

System. out .println(“nn—————-“);

f2 ();

}

// >0.999

private static void f1() {

int i = 0;//用来计次

double d = 0;//用来保存结果

//当d不是需要的值,继续产生新的值

while (d<=0.999) {

d = Math. random ();

i++;

}

System. out .println(“第”+i+”次:”+d);

}

private static void f2() {

int i = 0;

double d = 0;

do {

d = Math. random ();

i++;

} while (d<=0.999);

System. out .println(“第”+i+”次:”+d);

}

}

文章来源:智云一二三科技

文章标题:Java中break 和 continue,while和do while区别,这些你知道吗?

文章地址:https://www.zhihuclub.com/186766.shtml

关于作者: 智云科技

热门文章

网站地图