最近看书看到了数组,以及for循环的使用。
在晚上玩手机的时候刷到一个前阵子蛮火的段子:
女朋友的父亲说:你第一天给我0.01元,第二天给我0.02元,第三天给我0.04元,以此类推,每天的金额是前一天的两倍,给足30天我就把闺女嫁给你。
看到这个问题,我下意识的想使用数组去解决,但是在开始敲的时候发现,原来可以不用数组完成,便有了第一个demo:
package my.list;
public class MoneyDemo {
public static void main(String[] args) {
// TODO Auto-generated method stub
double a = 0.01;
double allMoney = a;
for (int i = 1; i < 31; i++) {
System.out.println("第" + i + "天的金额为:" + a + "元");
allMoney += a;
a *= 2;
}
System.out.println("总金额为:" + allMoney);
}
}
运行结果如下:
在完成了这个之后,个人感觉如果把它放在数组中会不会好些,于是就有了以下这个demo:
package my.list;
public class MoneyDemo2 {
public static void main(String[] args) {
// TODO Auto-generated method stub
double[] moneyList = new double[30];
double a = 0.01;
// moneyList[0] = 0.01;
double num = 0;
// System.out.println("第1天的金额为:" + moneyList[0] + "元");
for (int i = 0;i < 30; i++) {
moneyList[i] = a;
System.out.println("第" + (i+1) + "天的金额为:" + moneyList[i] + "元");
a *= 2;
num += moneyList[i];
}
// for (int i = 0;i < 30; i++) {
// num += moneyList[i];
// }
//
System.out.println("总金额为:" + num);
}
}
经过修改,注释掉了一些多余步骤,而它的运行结果为:
以上,是看完段子之后对于数组以及for循环的思考。。。