20172305 2017-2018-2 《程序設計與數據結構》第二週學習總結
教材學習內容總結
本週內容主要爲書的2.1-2.6的內容:
1.print與println的區別與使用
2.字符串能夠用「+」來拼接
3.轉義序列的應用
4.基本數據類型(4種整型、2種浮點型、布爾型和字符型)
5.還有感受噁心、難懂的交互式程序Scannerphp
教材學習中的問題和解決過程
- 問題1:轉義序列中的"\t"、"\n"、"\r"的做用不清楚
- 問題1解決方案:仿照例2.4在程序中試用,可是剛開始的時候在System.out.println("Roses are red.")的開頭位置添加,結果"\n" 與 "\r"效果同樣,在聽過老師的講解和教學視頻的解析,明白二者在效果上是同樣的,可是在乎義上是不一致的,"\n"表示是單純的換行,"\r"表示是回車換行。
- 問題2:整型與浮點型的區別與聯繫
- 問題2解決方案:整型包含的4種形式是依據存儲空間的大小而表示不一樣範圍內的數據。整型類型被老師說成是一兩的碗、二兩的碗等,很形象化的展現出之間的區別,像一個數字「8」在byte中存儲就是一個字節,在int中就是四個字節表示。浮點型的"float"與"double"也一樣相似。對於不清楚變量的取值範圍,就應當選個合理的,或是較大的內存空間的數據類型。
- 問題3:組合運算符與正常的運算符之間的區別
- 問題3解決方案:在看了這個內容以後,認爲二者沒有區別,在形式上組合運算符比正常的運算符在運用上更爲簡潔,在教學視頻上的講解,給出了更爲明確的解釋,例如一樣是"short s = 4" 後面用兩種不一樣的形式,"s = s +5"與"s +=5"倒是一個true,一個false。緣由在於開始的4是以兩個字節的存儲空間進行存儲,然後面的5以int的存儲空間進行的,爲4個字節,兩次運算,先相加在賦值,不能自動轉換。然後者是一次運算,左右兩邊的和賦值給左邊,能夠自動換行。
- 問題4: 例2.8和例2.8的內容量很大,一直不懂輸入的「Scanner scan = new Scanner(System.in)」,一直就照着作,模仿着教材的內容,進行練習和實驗。
代碼調試中的問題和解決過程
上週考試錯題總結
- 錯題1 經過引用地址直接得到存儲項的能力被稱爲 隨機存取
解析: 隨機存取表明同一時間訪問一組序列中的一個隨意組件。隨機存取存儲器的基本結構可分爲三個部分:存儲矩陣,地址譯碼器,讀寫電路。其中的地址譯碼器就是解決本題的關鍵。譯碼器能夠將輸入地址譯爲電平信號,以選中存儲矩陣中的響應的單元。開始理解不透徹,各個名詞混淆選錯。
- 錯題2 試圖解決問題以前,把一個問題分解成可控制的幾部分是很重要的,由於大多數問題太複雜,以致於不能做爲一個單獨大型的活動來解決
解析: 任何有趣的問題都太複雜,不能簡單地做爲單一的活動來解決。經過分解問題,咱們能夠爲每一塊構建一個小的解決方案,而後整合各個部分。答案D是正確的,但這不是咱們將問題分解成碎片的緣由。本題的各個選項說法都很正確,外加一個E選項,以致於沒有好好讀題就認爲各選項都對。
- 錯題3 關於Java這種程序設計語言,下面的哪一種說法是不正確的?它是一種執行程序前
不須要被轉換成機器語言的語言
解析: 任何語言都是須要轉爲機器語言纔可以執行,選項雖對但這個和JAVA的程序設計語言沒有關係,加之萬能的E選項,致使本身又被迷暈了。
- 錯題4 Java程序中的主方法是由public static main(String[ ] args)定義的
解析: 本題純屬誤選,敲了已經一週的代碼,這個已經快背下來了,A,D選項比較錯誤明顯,而B選項的分號沒看到致使選錯。
錯題5 System.out.println("Hello World"); might best be commented as這個指令最好被註釋爲**// used to demonstrate an output message (用來演示輸出)
解析: 答案中的註釋解釋了爲何該指令出如今程序中。而個人錯誤選項是該指令顯而易見就能看出來的,無需註釋。數組
「註釋應當揭示程序員編寫程序的初中或意圖。」數據結構
- 錯題6 在Java中,下列哪一條語法不合法?
s t a t i c main(String[ ] args)
解析: 因爲Java編譯器將空白(空格)做爲實體之間的分隔符,因此Java編譯器不會識別「static」。其餘語句都是合法的。A選項是定義程序名字,B選項是輸出Hi,C選項是輸出空白。只有D選項是錯誤的。
- 錯題7 下面哪一個是合法的Java標識符?i
解析: 類」這個詞在Java中是一個保留字,不能用做標識符。而剩餘選項中,標識符含有了除字母、數字、下劃線和美圓符號之外的符號。
錯題8 Java的獨特之處在於其字節碼,它容許在一臺機器上編譯的代碼在不一樣的硬件平臺上執行。
解析: Java程序的翻譯過程是首先將它編譯成字節碼,它在體系結構上是中立的,不管架構平臺是什麼,均可以使用它們。要執行該程序,字節碼必須由Java編譯器進一步編譯或由Java虛擬機解釋。其執行要求就是處理器平臺上必須有JVM。架構
"Java字節碼與真正的機器語言代碼之間的區別在於:字節碼獨立於處理器類型。這種特性使得Java具備結構獨立的顯著優點,易於在不一樣類型的處理器平臺之間移植。」編輯器
- 錯題9 關於Java的語法和語義,下列哪一項是正確的?Java編譯器能夠斷定你是否遵循正確的語法,但不能斷定正確的語義。
解析: 全部語言的編譯器都有檢測語法錯誤的能力,由於語法錯誤的使用會致使編譯器沒法正確地翻譯代碼。然而,編譯器沒法遵循程序的語義,由於這須要必定程度的理解程序要作什麼,而計算機沒有理解的意義。沒有好看編譯器、編輯器、翻譯器的做用,才致使選錯。
- 錯題10 下列Java命名規範中,哪一個是關於「store stomers」類的最佳命名?StoreCustomer
解析: 單詞應該鏈接在一塊兒而沒有空格,或者與「_」字符鏈接。忽略這條限制,錯誤的選擇了Store Customer。
- 錯題11 一個彩色圖像被分解成單個像素(點),其中每一個像素表示3個表示圖像中紅、綠和藍色的亮度值
解析: 黑白圖像是用0和1存儲的,而彩色圖像是用三個值存儲的,一個是紅色的程度,一個是藍色的程度,一個是綠色的程度。之前在電子政務課上老師就講過,本身一看A選項對就沒看別的,結果問題是彩色圖片,RGB用紅綠藍三種顏色表示的。
- 錯題12 在一個Java程序中,下面哪一個字符不須要有與之相關的「結尾」字符?
<
解析: {用於打開一個塊,所以}須要關閉該塊。(用於打開表達式,所以)須要關閉表達式。[用於啓動數組索引,所以]須要關閉數組索引。而 <和> 表示大於和小於,不須要關閉符。
錯題13Java字節碼是能夠直接執行的,而Java源代碼則不是。FALSE
解析: Java源代碼和Java字節碼都不是可執行的。二者都必須被編譯或解釋爲機器代碼。Java字節碼是有用的,可是它們是獨立於機器的可是半編譯的代碼,它容許您的Java代碼經過Internet傳輸並在另外一臺計算機上執行,即便其餘計算機是徹底不一樣的類型。全部程序的語言都必須翻譯成的機器語言才能執行的。
總結:第一週的學習發現本身什麼都不懂,一直忙於敲代碼,寫博客的,忽略了最重要的書本內容,並且第一章本身在沒考試以前就看了幾遍,沒有細細的推敲理解,經過考試才知道本身懂的不過這些名詞,而不是名詞背後所表明的意義。
感悟
本週各類課程、活動開始陸續增多,java的知識內容開始加深,感受有些吃力,尤爲是在通過第一次考試以後,感受知識更加可怕本身對書本的不夠深刻的瞭解,沒有更細緻的學習,外加上本身改不了的粗心馬虎形成考試的分數較低,有些題目大體掃一眼就選選項,只能分低了~還有更爲可怕的是下下週就要進行全英文的考試,想一想這事就頓生涼意,漢語的還都不會,就要來英文的,可怕至極,增強英語的訓練迫在眉睫,唉!壓力山大。還有本身一直不能改的馬虎錯誤,以致於進行交互式程序的練習,老是出現錯誤。合理的安排時間,提升效率的學習才能是努力遇上同窗的訣竅。剛步入編程的大門,就感受前路漫漫,但與java的編程毫不是後會無期。壓力就是動力,動力足了,通過時間的洗禮,成功就在不遠的前方。給本身加油!
學習進度條
目標 |
5000行 |
30篇 |
400小時 |
|
第一週 |
136/200 |
1/2 |
15/20 |
|
第二週 |
570/500 |
1/4 |
20/38 |
|
|
參考資料