how2j.cn

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



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



示例 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 Or  姿势不对,事倍功半! 点击查看做练习的正确姿势
假设你月收入是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浏览器 如果装有迅雷,播放视频呈现直接下载状态,请调整 迅雷系统设置-基本设置-启动-监视全部浏览器 (去掉这个选项)


答案-百万富翁
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公众号,关注后实时获知布最新的教程和优惠活动,谢谢。


问答区域    
2019-03-22 个人认为最简洁解法
terrytw



其实题目写的不是特别清楚,最后一年是否要加12000没说 不加12000就是1037305 加了12000就是1049305
public class HelloWorld {
	public static void main(String[] args) {
		for (int i = 1,m = 12000; i < 1000; i++) {
			m *= 1.2;
			m += 12000;
            if(m > 1000000) {
                System.out.println("第"+(i)+"年存款为"+m);
                break;
           }
        }

    }
}

							





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





2019-03-20 关于代码
Class//



简单明了
public class Test {
public static void main(String[] args) {
	double F = 0;
	for(int i = 1;i <= 999999999;i++) {
		F = 12000 * (Math.pow(1 + 0.2, i)) + F;
		System.out.println("经过" + i + "年,总收入为: " + F);
			if(F >= 1000000) {
				System.out.println("一共需要" + i + " 年");
				break;
				}	
		}
	}
}

							


2 个答案

很好 答案时间:2019-03-23
小亮大帝 答案时间:2019-03-20
public static void main(String[] args) { int year=1; int sum=0; while(true){ sum+=(int) (12000*Math.pow(1.2, year)); System.out.println("第"+year+"年总收益是:"+sum); if(sum>=1000000){ break; } year++; } System.out.println("总共需要:"+year); } }



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





2019-03-14 命名不规范的作业
2019-03-12 交作业
2019-03-11 用break没想出来..
2019-03-07 交作业-百万富翁
2019-03-05 有点蒙
2019-02-27 交作业!
2019-02-26 视频录制有点随意
2019-02-26 作业中文简单版
2019-02-23 作业
2019-02-19 不知道开始几年为什么也会会出来小数
2019-02-17 交作业
2019-02-02 此时变量的作用域是怎么样的
2019-01-25 我的是16年 答案是15年 不知道错在哪里
2019-01-23 我的用上了break
2019-01-22 答案是25吗
2019-01-16 提交作业
2019-01-15 不是要练习使用break吗?怎么那么多人都没用
2019-01-09 作者您好,答案是不是有问题?感觉之前的复利计算公式很正确
2018-12-29 交作业,
2018-12-27 交作业
2018-12-26 练习:百万富翁
2018-12-18 为啥你们的代码这么多。。。。。
2018-12-10 交作业啦啦啦啦
2018-11-29 我自己按照题目写了段代码却和题目的结果不一样。。。。。老师帮我看下把
2018-11-28 作业,也认为按题意:第二年初12000开始计息
2018-11-14 百万富翁作业
2018-11-12 这个是用数学公式做的,比原代码简单点,
2018-11-02 练习
2018-10-31 交作业 我的答案是24
2018-10-31 我的答案是24
2018-10-15 不打印,直接计算,不使用循环
2018-10-07 一台投资计算器
2018-09-30 交作业
2018-09-15 交作业
2018-09-08 过程简化,一层循环得出结果,但是数字稍微偏差;
2018-09-04 交作业
2018-08-28 这样的答案是不是还有漏洞???
2018-08-23 根据题意应该是这样的
2018-08-22 关于答案的理解
2018-08-18 表示第一年不应该计算利率,第一年只有12000
2018-08-18 看各位解法,表示第一年不应该计算利率,第一年只有12000,年底把12000寸到银行,哪有一上来就给你12000的?
2018-08-13 交作业
2018-08-03 不设年数限制的解法
2018-07-25 break;
2018-07-23 交作业
2018-07-16 所以每年的final最终收入还要依次加起来?
2018-07-04 交作业
2018-06-13 答案,简短+注释!
2018-06-03 答案
2018-05-13 我觉得这样挺好的
2018-05-10 break作业
2018-05-02 交作业
2018-04-21 简答
2018-04-21 简答
2018-03-28 写了一个 可以自己选择每年投入本金和每年利息
2018-02-26 while循环实现
2018-02-26 上答案啦
2018-02-26 上答案啦
2018-02-21 答案25年
2018-02-16 这是我写的最简单的做法
2018-01-29 蹩脚
2017-12-31 ^这个起什么作用搞不明白
2017-12-10 解题思路
2017-11-26 站主大大,不管我怎么修改我自己的程序,最后我出来的数据和你的数据每年都要差几个数字。
2017-11-19 为什么不需要外层循环就已经能算出来了,答案是一样的
2017-11-16 这解法不是写的太麻烦了吗
2017-11-13 if循环中的判断条件, 为什么写成 0==j%2 而 不是 j%2 == 0 呢? 两者有区别吗
2017-09-23 如果是每个月都按时投资1000是三年到百万吧?
2017-08-15 站长大人,可以写while(true)这样的代码吗
2017-08-09 总是和答案不一样;跪求大神来解救 。。。。到底是思维错误还是哪里错了
2017-06-24 答案
2017-05-10 while很简单吧
2017-04-11 请问用这个方法计算,和答案上的区别在哪呢
2017-04-03 个人感觉有些问题
2017-03-30 第6年达到百万富翁
2017-03-25 终于明白了,原来投资的金额每年都在增长12000
2017-01-21 如果按月計算的話,我覺得應該是這樣子的
2016-12-08 一开始没看明白把rate*=rate了,捣鼓了半天才发现,,总算对了
2016-12-07 题目有点懵
2016-12-06 我只写了一层循环,输出结果是差不多的,而且我复制你的代码结果也有点差异,不知道为什么
2016-11-21 有点看不懂
2016-11-13 您这是利滚利的算法啊?第二年还要继续往里投钱,这个没有参与计算吧?
2016-10-13 对这个复利写法有点懵
2016-09-26 照着题目写了段程序,结果却和答案的不一样。。
2016-05-28 表示没看懂题目。。
2016-03-30 for循环+break的执行结果为空?




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

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

上传截图