how2j.cn

本视频是解读性视频,所以希望您已经看过了本知识点的内容,并且编写了相应的代码之后,带着疑问来观看,这样收获才多。 不建议一开始就观看视频



6分53秒
本视频采用html5方式播放,如无法正常播放,请将浏览器升级至最新版本,推荐火狐,chrome,360浏览器。 如果装有迅雷,播放视频呈现直接下载状态,请调整 迅雷系统设置-基本设置-启动-监视全部浏览器 (去掉这个选项)。 chrome 的 视频下载插件会影响播放,如 IDM 等,请关闭或者切换其他浏览器



示例 1 : break;   
示例 2 : 练习-百万富翁   
示例 3 : 答案-百万富翁   

直接结束当前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); } } }
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);
		}
    }
}
示例 2 :

练习-百万富翁

edit  姿势不对,事倍功半! 点击查看做练习的正确姿势
假设你月收入是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
示例 3 :

答案-百万富翁

edit
在查看答案前,尽量先自己完成,碰到问题再来查看答案,收获会更多
在查看答案前,尽量先自己完成,碰到问题再来查看答案,收获会更多
在查看答案前,尽量先自己完成,碰到问题再来查看答案,收获会更多
查看本答案会花费5个积分,您目前总共有点积分。查看相同答案不会花费额外积分。 积分增加办法 或者一次性购买JAVA 基础总计0个答案 (总共需要0积分)
查看本答案会花费5个积分,您目前总共有点积分。查看相同答案不会花费额外积分。 积分增加办法 或者一次性购买JAVA 基础总计0个答案 (总共需要0积分)
账号未激活 账号未激活,功能受限。 请点击激活
本视频是解读性视频,所以希望您已经看过了本答案的内容,带着疑问来观看,这样收获才多。 不建议一开始就观看视频

16分33秒 本视频采用html5方式播放,如无法正常播放,请将浏览器升级至最新版本,推荐火狐,chrome,360浏览器。 如果装有迅雷,播放视频呈现直接下载状态,请调整 迅雷系统设置-基本设置-启动-监视全部浏览器 (去掉这个选项)。 chrome 的 视频下载插件会影响播放,如 IDM 等,请关闭或者切换其他浏览器


答案-百万富翁
public class HelloWorld { public static void main(String[] args) { int fundPerMonth = 1000; int fundPerYear = fundPerMonth *12; float rate = 0.20f; //F = p* ( (1+r)^n ); int sum = 0; int target = 1000*1000; for (int j = 1; j < 100; j++) { int year = j; float compoundInterestRate = 1; for (int i = 0; i < year; i++) { compoundInterestRate = compoundInterestRate * (1+rate); } int compoundInterest = (int) (fundPerYear * compoundInterestRate); sum +=compoundInterest; System.out.println("经过" + year + " 年, 总收入 " + sum); if(sum>=target){ System.out.println("一共需要" + year + "年,累计收入超过" + target ); break; } } } }


HOW2J公众号,关注后实时获知最新的教程和优惠活动,谢谢。


问答区域    
2024-01-27 有没有大佬帮忙看看我的利率怎么了 (TAT)
是经然啊




为什么从第三年(图中标蓝处)开始,利率变得有亿点长,貌似偏差了但不多? 看了几遍代码也找不到问题
加载中
public class 控制流程 {	
   		public static void main(String[] args){
   			//《百万富翁》
   			double money = 0;
   			for (int years = 1; 1<2; years++){
   				//每年本金
   				money += 12000;
   				//利率
   				double years_double = (double)years;
   				double LiLv = Math.pow(1.2, years_double);
   				System.out.println("第"+years+"年,本金是"+money+",利率是"+LiLv+",总收入是"+money*LiLv);
   				//若到一百万则破循环
   				if (money*LiLv >= 1000000){
   					System.out.println(years);
   					break;
   				}
   				//若未到一百万则今年连本带息
   				else
   					money = money*LiLv;
   			}
   				
			}
}

							


5 个答案

outis
答案时间:2024-09-22
小趴菜》
答案时间:2024-06-13
public class Breaks { private static Math match;//Math用来提供平方方法 public static void main(String[] args) { float p = 12000;//本金 //float r = 0.2f;//年利率 float g = 1.2f;//年利率+1的值,在复利公式中会用到 int n;//最初年份 //float z;//年利率+1的次方值 float F = 0;//最终收入 for (n=1;;n++) { System.out.println("年份为:" + n);//输出n //z = (float) Math.pow(g, n);//年利率+1的多次方后的值,g为值,n为次方(没用上?) //System.out.println("年利率+1的多次方后的值为:" + z);//输出z(没用上?) F = p * g;//复利公式,年利率g没有变化 p = 12000 + F; System.out.println("本金是:" + p);//输出p System.out.println("第" + n +"年的最终收入是:" + F);//输出F if (F>=1000000){break;} } } }

木宇
答案时间:2024-04-19
打卡最简单

yangkuanxu
答案时间:2024-04-16
public class ex56 { public static void main(String[] args) { int moneybase=12000; float f=1.2f; int requareyera=0; int sum=0; for (int year=1;year<100;year++){ float f1=f; for(int i=1;i<year;i++){ f1*=f; } sum+=moneybase*f1; if(sum>1000000){ requareyera=year; break; } } System.out.println(requareyera); }}

boanle
答案时间:2024-02-07
利率计算错误,后面存的钱都按第一年的利率计算了



回答已经提交成功,正在审核。 请于 我的回答 处查看回答记录,谢谢
答案 或者 代码至少填写一项, 如果是自己有问题,请重新提问,否则站长有可能看不到





2023-12-18 回答
xu1748047159




第1年,赚了14400钱 第2年,赚了17280钱 第3年,赚了20736钱 第4年,赚了24883钱 第5年,赚了29859钱 第6年,赚了35831钱 第7年,赚了42998钱 第8年,赚了51597钱 第9年,赚了61917钱 第10年,赚了74300钱 第11年,赚了89161钱 第12年,赚了106993钱 第13年,赚了128391钱 第14年,赚了154070钱 第15年,赚了184884钱 第16年,赚了221861钱 第17年,赚了266233钱 第18年,赚了319480钱 第19年,赚了383376钱 第20年,赚了460051钱 第21年,赚了552062钱 第22年,赚了662474钱 第23年,赚了794969钱 第24年,赚了953963钱 第25年,赚了1144755钱 Process finished with exit code 0
package HOW2J.CN;

public class YinHang {
    public static void main(String[] args) {
        /**
         * 假设情景一:
         * p = 10000
         * r = 0.05
         * n = 1
         * 解读:
         * 本金是10000
         * 年利率是5%
         * 存了一年 1次
         * 复利收入 10000*( (1+0.05)^1 ) = 10500
         *  //F = p* ( (1+r)^n );
         */

        int fundPerMonth=1000;//本金
        int fundPeryear=fundPerMonth*12;//年本金
        float rate =0.2f;
        int year=1;
        float ConformingRate=1;
        int compoundInterest=0;
        for (int i = 0; i < year; i++) {
            ConformingRate=ConformingRate*(1+rate);//复合利率
            compoundInterest=(int)(fundPeryear*ConformingRate);//符复核收益
            if (compoundInterest >1000000) {
                System.out.println("第"+year+"年,赚了"+compoundInterest+"钱");
                break;
            }else {
                System.out.println("第"+year+"年,赚了"+compoundInterest+"钱");
                year++;
            }

        }
    }
}

							


1 个答案

85149090
答案时间:2024-09-12
public static void main(String[] args){//F = p* ( (1+r)^n ); int n; double f,p,r; r = 1.2; p = 0; for(n=1;;n++) { p += 12000; f = p; if(f>=1000000) break; else p = f*r; System.out.println("第"+n+"年本金到达 "+f+"总金额到达 "+p); }



回答已经提交成功,正在审核。 请于 我的回答 处查看回答记录,谢谢
答案 或者 代码至少填写一项, 如果是自己有问题,请重新提问,否则站长有可能看不到





2023-02-27 15
2022-09-28 不使用复利公式面向对象风格解
2022-07-24 题目要求每年只能投12000,要花费15年;如果把每年赚的都投了,只需要6年


提问太多,页面渲染太慢,为了加快渲染速度,本页最多只显示几条提问。还有 152 条以前的提问,请 点击查看

提问之前请登陆
提问已经提交成功,正在审核。 请于 我的提问 处查看提问记录,谢谢
关于 JAVA 基础-控制流程-break 的提问

尽量提供截图代码异常信息,有助于分析和解决问题。 也可进本站QQ群交流: 578362961
提问尽量提供完整的代码,环境描述,越是有利于问题的重现,您的问题越能更快得到解答。
对教程中代码有疑问,请提供是哪个步骤,哪一行有疑问,这样便于快速定位问题,提高问题得到解答的速度
在已经存在的几千个提问里,有相当大的比例,是因为使用了和站长不同版本的开发环境导致的,比如 jdk, eclpise, idea, mysql,tomcat 等等软件的版本不一致。
请使用和站长一样的版本,可以节约自己大量的学习时间。 站长把教学中用的软件版本整理了,都统一放在了这里, 方便大家下载: https://how2j.cn/k/helloworld/helloworld-version/1718.html

上传截图