20172315 2017-2018-2 《程序設計與數據結構》第五周學習總結


20172315 2017-2018-2 《程序設計與數據結構》第五周學習總結

教材學習內容總結

  • 條件語句和循環語句可用於改變控制流,使程序不按線性方式運行。
  • 在條件語句和循環語句中使用相等性運算符而不是使用=,相等性運算符比算術運算符優先級低。
  • !為非,&&為與,||為或。
  • 語句塊必須使用括號
  • if的嵌套可使程序在得到前一個判斷結果之后再進行另一個判斷
  • 浮點數二進制數位都相等時,這兩個浮點數才相等
  • 字符也可以比較大小
  • 比較對象可以使用equals方法
  • 迭代器可用於一次處理某個集合
  • switch中最好加上break和default子句
  • 條件運算符可代替if-else語句

教材學習中的問題和解決過程

  • 問題1:不太了解字符比較
  • 問題1解決方案:查閱百度。 參考資料
  • 問題2:對於迭代器了解不深刻
  • 問題2解決方案:同樣是詢問百度~參考資料
  • 問題3:對於ArrayList類了解不深刻
  • 問題3解決:反復閱讀教材及例5.11后查閱了資料

代碼調試中的問題和解決過程

  • 問題1:習慣性的忘記在語句結束后加上“;”

  • 問題1解決方案:強迫自己在寫完一個語句后檢查應不應該加上“;”

  • 問題2:經常在條件和循環語句的條件中把=與==弄混

  • 問題2解決方案:仔細看教材上的定義,知道了=與==是有很大區別的

  • 問題3:寫pp5.7時發現用例5.9的方法使這個程序繼續運行直到用戶退出發現程序直接就退出了

  • 問題3解決:仔細檢查代碼和跟同學討論之后發現是要定義2個Scanner方法才能實現用戶主動退出程序

代碼托管

(statistics.sh腳本的運行結果截圖)

上周考試錯題總結

  • 錯題1及原因,理解情況
    In order to preserve encapsulation of an object, we would do all of the following except for which one?
    A . Make the instance data private
    B . Define the methods in the class to access and manipulate the instance data
    C . Make the methods of the class public
    D . Make the class final
    E . All of the above preserve encapsulation
    封裝意味着類包含操作數據所需的數據和方法。 為了正確地保護封裝,不應該從類的外部直接訪問實例數據,因此實例數據將變為專用,並定義方法來訪問和操作實例數據。 此外,訪問和操作實例數據的方法已公開,其他類可以使用該對象。 保留字“final”用於控制繼承,與封裝無關。
  • 錯題2及原因,理解情況
    Consider a sequence of method invocations as follows: main calls m1, m1 calls m2, m2 calls m3 and then m2 calls m4, m3 calls m5. If m4 has just terminated, what method will resume execution?
    A . m1
    B . m2
    C . m3
    D . m5
    E . main
    正確答案: B
    你的答案: D
    一旦方法終止,控制就會繼續使用調用該方法的方法。 在這種情況下,m2調用m4,以便當m4終止時,m2被恢復。
  • 錯題3及原因,理解情況
    Java methods can return more than one item if they are modified with the reserved word continue, as in public continue int foo( ) { ... }
    A . true
    B . false
    正確答案: B
    你的答案: A
    所有的Java方法都會返回一個單獨的項目,無論它是基本數據類型還是void。 保留字continue用於退出循環的其余部分並再次測試條件。
  • 錯題4及原因,理解情況
    Defining formal parameters requires including each parameters type.
    A . true
    B . false
    正確答案: A
    你的答案: B
    為了使編譯器檢查方法調用是否正確,編譯器需要知道傳遞參數的類型。 因此,所有形式參數(在方法頭中定義的)必須包含它們的類型。 這是使Java成為強類型語言的一個元素。
  • 錯題5及原因,理解情況
    Every class definition must include a constructor.
    A . true
    B . false
    正確答案: B
    你的答案: A
    Java允許在沒有構造函數的情況下定義類,但是,在這種情況下使用了默認的構造函數。

學習進度條

代碼行數(新增/累積) 博客量(新增/累積) 學習時間(新增/累積) 重要成長
目標 5000行 30篇 400小時
第一周 200/200 2/2 20/20
第二周 287/481 2/4 18/38
第三周 320/801 3/7 22/60
第四周 900/1600 2/9 30/90
第五周 807/2407 2/11 40/130

參考資料


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM