239、Java基础16 - 控制流程【for、continue、break】 2019.11.13

62 篇文章 0 订阅
4 篇文章 0 订阅

1、for循环

  • for循环,和while一样,只是表达方式不一样
public class HelloWorld {
    public static void main(String[] args) {
           
        //使用while打印0到4    
        int i = 0;
        while(i<5){
            System.out.println("while循环输出的"+i);
            i++;
        }
          
        //使用for打印0到4    
        for (int j = 0; j < 5; j++) {
            System.out.println("for  循环输出的"+j);
        }
    }
}
 

2、练习:乞丐

天朝有一个乞丐姓洪,去天桥要钱
第一天要了1块钱
第二天要了2块钱
第三天要了4块钱
第四天要了8块钱
以此类推

问题: 洪乞丐干10天,收入是多少?

public class Money {

    public static void main(String args[]){
        int total = 1; 
        int sum = 0;  // 总收入
        for(int i = 1; i <= 10; i++){
            total = total * 2;
            sum += total; 
        }
        System.out.println(sum);

        }
 }

3、continue

  • continue 继续下一次循环

如果是双数,后面的代码不执行,直接进行下一次循环

在这里插入图片描述

public class HelloWorld {
    public static void main(String[] args) {
          
        //打印单数    
        for (int j = 0; j < 10; j++) {
            if(0==j%2) 
                continue; //如果是双数,后面的代码不执行,直接进行下一次循环
             
            System.out.println(j);
        }
    }
}

4、练习:忽略倍数

打印 1-100 之间的数,如果这个数,要么是3,要么5的倍数,就忽略掉
在这里插入图片描述

public class continue
{
    public static void main(String args[]){

      // 打印 1-100 之间的数,如果这个数,要么是3,要么5的倍数,就忽略掉
        for (int i = 1; i <= 100; i++){
            if (i % 3 == 0 || i % 5 == 0){
                continue;
            }
            System.out.println(i);
            
        }
    }
}

5、break

  • break:直接结束当前for循环
public class HelloWorld {
    public static void main(String[] args) {
          
        //打印单数    
        for (int j = 0; j < 10; j++) {
            if(0==j%2) 
                break; //如果是双数,直接结束循环
             
            System.out.println(j);
        }
    }
}

6、练习:百万富翁

假设你月收入是3000,除开平时花销,每个月留下1000块钱进行投资。

然后你认真的钻研了 《股票和基金 21天从入门到精通》,达到了每年20%的投资回报率。

那么问题来了,以每个月投资1000块钱的节奏,持续投资多少年,总收入达到100万
(复利计算按照每年12000投入计算,不按照每月计息)

复利公式:
F = p* ( (1+r)^n );
F 最终收入
p 本金
r 年利率
n 存了多少年

假设情景一:
p = 10000
r = 0.05
n = 1

解读:
本金是10000
年利率是5%
存了一年 1次
复利收入 10000*( (1+0.05)^1 ) = 10500

假设情景二:
p = 10000
r = 0.05
n = 2

解读:
本金是10000
年利率是5%
存了两年
复利收入 10000*( (1+0.05)^2 ) = 11025

public class continue1
{
    public static void main(String args[]){
    
        double num=0;//最终收入
        double r=1.2; //年利率为0.2
        int year=0;
        while(true) {
            num = (12000+ num)*r; //本金+复利
            year++;
            System.out.println("存了"+year+"年"+"存到了"+num+"元");
            if(num>1000000)
                break;
        }
        System.out.println("存了"+year+"年"+"存到了"+num+"元");
        
       }
}

7、参考链接

[01] How2j - 控制流程系列教材 (四)- JAVA的FOR循环
[02] How2j - 控制流程系列教材 (五)- JAVA 的 CONTINUE语句
[03] How2j - 控制流程系列教材 (六)- JAVA的BREAK语句

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值