第二週做業

本週學習總結

本週主要學習內容

  • 主要學習了JAVA的數據類型,好比
  • 基本數據類型:double、float、char、boolean。
  • 引用數據類型:數組;   動態數組(ArrayList)。
  • String類型:不可變類型,使用他能夠利用存儲空間。

    書面做業

    1,.String 使用Eclipse關聯jdk源代碼

  • 使用數組來存儲字符串

    1.2 分析其構造函數public String(char value[])的做用

  • 經過char數組申請內存,新的字符串不影響新的數組

    1.3 閱讀public String replace(char oldChar, char newChar)方法的代碼,回答String的不可變性在該函數中如何體現?(重點)

  • String的不可變性是指一旦建立字符串後,對它作的任何修改都是生成新的字符串對象。

    2.StringBuilder

    2.1 結合PTA 5-2(StringBuilder) ,說明爲何頻繁修改字符串時,應該使用StringBuilder而不是String?

  • 進行頻繁拼接時,若是使用「+」 那麼內存佔用太大。而StringBuilder 是在字符串原有基礎上進行添加內存佔用較小。

    2.2閱讀jdk文檔,查詢StringBuilder的append(char[] str)方法功能是什麼?試分析StringBuilder內部使用什麼來存放字符?調用StringBuilder的append(char[] str)方法時,是如何實現添加字符的操做?

  • 用到了char數組

3.字符串與字符串池

3.1嘗試使用字符串池的概念解釋以下程序段輸出結果,並回答這段代碼建立了幾個字符串對象String str1 ="hi", str2="hi"; String str3 = new String(str1) System.out.println(str1==str2);

  • 返回結果true,該代碼一共創建了2個字符串對象

    3.2 重點:對基本類型咱們可使用==比較兩個值是否相等,對於引用類型(如String, Integer、數組等)爲何不能使用==比較?應該怎樣比較他們的值是否相等呢?

  • == 與 equals  ==查看內存位置,equals查看內容。對於引用類型,內容同樣內存不必定同樣。因此應該用equals。

    4.Wrapper(包裝類)

    4.1 Integer i = 100;//100是基本類型,i是引用類型,爲何能夠將100賦值給i?Integer x = 100; int y = x+1;x++;這一串命令中包含了些什麼操做?

  • 100被自動裝箱爲Integer而後賦值給i   再自動裝箱和拆箱。

    4.2 Java爲何有了基本數據類型,還須要其包裝類呢?包裝類能給咱們帶來什麼好處呢?

  • 包裝類可讓基本類型和其餘類型進行交互。並且包裝類可使基本量在堆中更快。

    5. 實驗總結

    5.1 結對編程實踐:使用結對編程的方式完成本週編程題目,即兩我的同時合做完成實驗題目(可1題也可多題,但最好是是兩我的都沒作過的題目)。推薦實施步驟:1.兩我的坐在同一臺電腦屏幕前判題,討論、決定大概由誰先寫。2. 1我的先編5分鐘(本身商量多少分鐘),同時另外一我的觀察對方編程或者查相關資料。3. 5分鐘後,簡單討論後,換另一我的繼續編(請必定要換,另外一我的若是沒法接受應由第一我的講解大概思路以方便其接受)。並完成以下做業:a.描述結對隊友姓名、結對過程,提供非擺拍的兩人在討論、細化和編程時的結對照片。b.結對編程真的可以帶來1+1>2的效果嗎?經過此次結對編程,請談談你的感覺和體會(如是否有利於本身編程水平的提升、是否有利於開拓編程思路)。

  • 結對編程各有利弊 弊端是自我發覺代碼漏洞的能力下降容易產生依賴感。利在於能夠更好學習編程,對於初學者 也是就是我如今的水平結對應該更爲合適。

    5.2PTA-1綜合小測驗

  • 調用了遞歸函數 排序輸出用到了sort 並使用了 Arrays.toString();search用到了Arrays.binarySearch();用了str.substring來截取出生日日期

5.3 PTA-3身份證排序。並回答:使用sort2方法進行排序能夠對出生年月日進行升序排序,若是如今有須要對其進行降序排序,或者按照其中的出生月份排序,怎麼解決呢?

  • 同理使用Arrays.sort()進行升序排序。可是以後有個部分錯誤仍是沒有想明白

5.4 PTA-4動態數組

  • 利用了二維數組來輸出,利用了printf(「%-xs」,......)再使用了Arrays中的deepToString```System.out.println(Arrays.deepToString(str));```

    5.5 (重點:小測題目)5-8ArrayList入門。並回答:爲何有了數組還要使用ArrayList?

    JDK中ArrayList的方法摘要:
    java

3. 碼雲及PTA

  • 老師我真的不會用碼雲 並且做業一的時候就截圖反應碼雲就出錯了仍是電腦有問題orz求教。

    3.2 截圖PTA題集「Java基本語法」完成狀況圖

3.3 使用師姐開發的jar程序統計每週的代碼量

相關文章
相關標籤/搜索