siesteven

你要保守你心,胜过保守一切。因为一生的果效是由心发出。 --箴4:23
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

传智播客 java基础 相关资料 Day2

Posted on 2017-06-09 00:19  siesteven  阅读(138)  评论(0编辑  收藏  举报

其实标题就是骗人的。我其实是在看哔哩哔哩上  马士兵  的java ee 的初级教程视频。

今天主要的收获有 个

1、局部变量  new的对象的存储区。

2、程序运行时,对象生存周期的变化。

3、第一章的基础知识点。如下所示

4、内存解析。比看书本清晰明了多了。啃完  java编程思想,还是迷迷糊糊的。很无奈!

5、偶遇求阶乘的一道题。觉得那个写法很好。充分利用了运算过程中的值。确实省去了很大开销。代码如下(今天洗衣服,编码时间短了,没写注释,没格式化,没标准化。。。欠着了。。。):

 1 package chuanzhiboke;
 2 
 3 public class Day2 {
 4     private static Day1 day1=new Day1();
 5 public static void main(String args[]){
 6     calculateFactor();
 7 }
 8 
 9 private static void calculateFactor(){
10     Integer startNum=1;
11     Integer endNum=10;
12     Integer oneToTen= calculateFactorialSum( startNum, endNum);
13     Integer ten= calculateFactorialOneNumber(endNum);
14 
15     Integer nine=  calculateFactorialSum(1,9);
16     day1.showMsg(oneToTen.toString());
17     day1.showMsg(ten.toString());
18     day1.showMsg( nine.toString());
19     day1.showMsg(oneToTen + " - "+ten+" = "+( oneToTen-ten));
20 }
21 
22 private static Integer calculateFactorialSum(Integer startNum,Integer endNum){
23     Integer result=0;
24     Integer tempNum=1;
25     for(int i=startNum;i<=endNum;i++){
26         tempNum*=i;
27         result+=tempNum;
28     }
29     day1.showMsg(result.toString());
30     return result;
31 }
32 
33 private static Integer calculateFactorialOneNumber(Integer seed){
34     Integer result=1;
35     for(int i=1;i<=seed;i++){
36         day1.showMsg(result+"*"+i);
37         result*=i;
38     }
39     day1.showMsg(result.toString());
40     return result;
41 }
42 }