make loop

This commit is contained in:
chai2010
2015-12-28 15:57:07 +08:00
parent 77148f84d4
commit ba7261d140
25 changed files with 44 additions and 44 deletions

View File

@@ -33,7 +33,7 @@ func main() {
和我們前面提到的for循環一樣在if條件的兩邊我們也不需要加括號但是if表達式後的邏輯體的花括號是不能省略的。如果需要的話像其它編程語言一樣這個if表達式也可以有else部分這部分邏輯會在if中的條件結果爲false時被執行。
map是Go語言內置的key/value型數據結構這個數據結構能夠提供常數時間的存儲、取、測試操作。key可以是任意數據類型隻要該類型能夠用==運算符來進行比較string是最常用的key類型。而value類型的范圍就更大了基本上什麽類型都是可以的。這個例子中的key都是string類型value用的是int類型。我們用內置make函數來創建一個空的map當然了make方法還可以有别的用處。在4.3章中我們還會對map進行更深入的討論。
map是Go語言內置的key/value型數據結構這個數據結構能夠提供常數時間的存儲、取、測試操作。key可以是任意數據類型隻要該類型能夠用==運算符來進行比較string是最常用的key類型。而value類型的范圍就更大了基本上什麽類型都是可以的。這個例子中的key都是string類型value用的是int類型。我們用內置make函數來創建一個空的map當然了make方法還可以有别的用處。在4.3章中我們還會對map進行更深入的討論。
dup程序每次讀取輸入的一行這一行的內容會被當做一個map的key而其value值會被+1。counts[input.Text()]++這個語句和下面的兩句是等價的:
@@ -76,7 +76,7 @@ Printf有一大堆這種轉換Go語言程序員把這些叫做verb動詞
dup1中的程序還包含了一個\t和\n的格式化字符串。在字符串中會以這些特殊的轉義字符來表示不可見字符。Printf默認不會在輸出內容後加上換行符。按照慣例用來格式化的函數都會在末尾以f字母結尾譯註f後綴對應format或fmt縮寫比如log.Printffmt.Errorf同時還有一繫列對應以ln結尾的函數譯註ln後綴對應line縮寫這些函數默認以%v來格式化他們的參數併且會在輸出結束後在最後自動加上一個換行符。
許多程序從標準輸入中讀取數據像上面的例子那樣。除此之外還可能從一繫列的文件中讀取。下一個dup程序就是從標準輸入中讀到一些文件名用os.Open函數來打開每一個文件取內容的。
許多程序從標準輸入中讀取數據像上面的例子那樣。除此之外還可能從一繫列的文件中讀取。下一個dup程序就是從標準輸入中讀到一些文件名用os.Open函數來打開每一個文件取內容的。
```go
gopl.io/ch1/dup2