continue和return的使用

时间:2023-02-13 19:06:18

1. continue细节 145

1.1 continue后面也可以跟标签

continue和return的使用

例1

//continue细节
public class Test16
{
public static void main(String[] args)
{
label1:
for(int j=0;j<2;j++)
{
label2:
for(int i=0;i<10;i++)
{
if(i==2)
{
//continue;//等价于continue label2;输出2次[013456789]
// continue label2;//输出2次[013456789]
continue label1;//输出2次[01]
}
System.out.println("i="+i);
}
}
}
}

2.跳转控制语句 return 146

2.1 使用方法

return 使用方法,表示跳出所在的方法,这里我们简单的提一下。注意:如 果 return 写在 main 方法,退出程序

2.2 判断输出

//判断输出
public class Test16
{
public static void main(String[] args)
{
for(int i=1;i<=5;i++)
{
if(i==3)
{
System.out.println("中国"+i);
//break;
//continue;
return;//使用在main,表示直接跳出循环
}
System.out.println("Hello world");
}
System.out.println("go on...");
}
}

continue和return的使用

3. 控制结构练习1 147

3.1 某人有100000元,每经过一次路口,需要缴费,规则如下

1)当现金>50000时,每次叫5%

2)当现金<=50000时,每次交1000

编程计算此人可以经过多少次路口,要求使用while break完成

public class Test16
{
public static void main(String[] args)
{
double money = 100000;//还有多少钱
int count = 0;//统计路口
while(true)
{
if(money>50000)//当现金>50000时,每次叫5%
{
money=money-money*0.05;
count++;
}
else if(money>=1000)//当1000<=现金<=50000时,每次交1000
{
money-=1000;
count++;
}
else//现金<1000无法过路了
{
break;
}
}
System.out.println("一共过了"+count+"个路口");
}
}

3.2 实现判断一个整数,属于那个范围:大于0;小于0;等于0

import java.util.Scanner;
public class Test16
{
public static void main(String[] args)
{
Scanner myScanner=new Scanner(System.in);
System.out.println("请输入一个整数");
int n = myScanner.nextInt();
if(n>0)
{
System.out.println("大于0");
}
else if(n<0)
{
System.out.println("小于0");
}
else
{
System.out.println("等于0");
}
}
}

3.3 判断一个年份是否为闰年

import java.util.Scanner;
public class Test16
{
public static void main(String[] args)
{
Scanner myScanner = new Scanner(System.in);
int year = myScanner.nextInt();
if(year%4==0 && year%100!=0 || year%400==0)
{
System.out.println(year+"是闰年");
}
else
{
System.out.println("no");
}
}
}

3.4 判断一个数是否为水仙花数

水仙花数:一个3位数其各个位上的数字立方和等于其本身例如:153=1*1*1+3*3*3+5*5*5

import java.util.Scanner;
public class Test16
{
public static void main(String[] args)
{
Scanner myScanner = new Scanner(System.in);
int n = myScanner.nextInt();
int a = n/100;//百位
int b = n/10%10;//十位
int c = n%10;//个位
if(n==a*a*a+b*b*b+c*c*c)
{
System.out.println(n+"是水仙花数");
}
else
{
System.out.println("no");
}
}
}

4. 判断输出

//判断输出
//此题无输出
import java.util.Scanner;
public class Test17
{
public static void main(String[] args)
{
int m=0,n=3;
if(m>0)
{
if(n>2)
{
System.out.println("ok1");
}
else
{
System.out.println("ok2");
}
}
}
}

5. 输出1-100不能被5整除的数,每行5个

import java.util.Scanner;
public class Test17
{
public static void main(String[] args)
{
int count = 0;//记录个数
for(int i=1;i<=100;i++)
{
if(i%5!=0)
{
count++;
System.out.print(i+"\t");
if(count%5==0)//每满5个就输出一个换行...
{
System.out.println();
}
}
}
}
}

6. 输出小写字母a-z以及大写字母A-Z

方法1

import java.util.Scanner;
public class Test17
{
public static void main(String[] args)
{
for(int i=97;i<=122;i++)
{
System.out.print((char)i+" "); //强制类型转换
}
System.out.println();
for(int a=90;a>=65;a--)
{
System.out.print((char)a+" ");
}
}
}

方法2

//方法2
import java.util.Scanner;
public class Test17
{

public static void main(String[] args)
{
for(char c1='a';c1<='z';c1++)
{
System.out.print(c1+" ");
}
System.out.println();
for(char c1='Z';c1>='A';c1--)
{
System.out.print(c1+" ");
}
}
}

7. 求出1-1/2+1/3-1/4……1/100的和 151

方法1

import java.util.Scanner;
public class Test17
{

public static void main(String[] args)
{
double sum=0;
int flag = 1;
for(int i=1;i<=100;i++)
{
sum=sum+(1.0/i)*flag;
flag=-flag;
}
System.out.println("sum="+sum);
}
}

方法2

import java.util.Scanner;
public class Test17
{
public static void main(String[] args)
{

double sum=0;
for(int i=1;i<=100;i++)
{
if(i%2!=0)//分母为奇数,前面为+
{
sum=sum+(1.0/i);
}
else//分母为偶数,前面为-
{
sum=sum-(1.0/i);
}
}
System.out.println("sum="+sum);
}
}

8. 求1+(1+2)+(1+2+3)+(1+2+3+4)+……+(1+2+3+……+100)的结果 152

//思路分析
//一共有100项
//每项逐渐增加
//很像一个双层循环
public class Test17
{
public static void main(String[] args)
{
int sum = 0;
for(int i=1;i<=100;i++)//i正好表示当前项的最大值
{
for(int j=1;j<=i;j++)
{
sum+=j;
}
}
System.out.println("sum="+sum);
}
}