<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      PHP轉(zhuǎn)Go系列:map映射

      映射的定義

      初識映射會很懵,因為在PHP中沒有映射類型的定義。其實沒那么復雜,任何復雜的類型在PHP中都可以用數(shù)組表示,映射也不例外。

      $array['name'] = '平也';
      $array['sex'] = '1';
      $array['age'] = '10';
      
      //output
      Array
      (
          [name] => 平也
          [sex] => 1
          [age] => 10
      )
      

      映射其實就是有key有value的數(shù)組,在Go中的賦值也很類似,但需要提前聲明該映射類型的鍵與值的類型,確保所有的鍵和值的賦值類型統(tǒng)一,否則會報錯。

      array := make(map[string]string)
      array["name"] = "平也"
      array["sex"] = "1"
      array["age"] = "10"
      fmt.Print(array) //output map[age:10 name:平也 sex:1]
      

      在PHP中還有一種初始化數(shù)組的方法,就是將所有要存儲的鍵與值賦值給變量。

      $array = [
      	'name' => '平也',
      	'sex' => '1',
      	'age' => '10'
      ];
      

      在Go中也有類似的初始化方法,但切記統(tǒng)一鍵與值的數(shù)據(jù)類型。

      array := map[string]string{
      	"name": "平也",
      	"sex":  "1",
      	"age":  "10",
      }
      

      映射的遍歷

      在PHP中其實就是遍歷數(shù)組的操作,foreach即可。

      $array = [
      	'name' => '平也',
      	'sex' => '1',
      	'age' => '10'
      ];
      
      foreach ($array as $key => $value) {
      	print_r($array);
      }
      
      //output
      Array
      (
          [name] => 平也
          [sex] => 1
          [age] => 10
      )
      Array
      (
          [name] => 平也
          [sex] => 1
          [age] => 10
      )
      Array
      (
          [name] => 平也
          [sex] => 1
          [age] => 10
      )
      

      在Go中也可以像遍歷數(shù)組那樣遍歷map,依然使用range關(guān)鍵字。

      array := map[string]string{
      	"name": "平也",
      	"sex":  "1",
      	"age":  "10",
      }
      for v, k := range array {
      	fmt.Print(k, v)
      }
      

      上篇文章講到遍歷時可以通過下劃線來忽略鍵或值,如果只遍歷鍵,下劃線也可以省略。

      array := map[string]string{
      	"name": "平也",
      	"sex":  "1",
      	"age":  "10",
      }
      for k := range array {
      	fmt.Print(k)
      }
      //output sexagename
      

      映射的取值

      PHP中可以直接通過讀數(shù)組的key來取值。

      $array = ['name' => 'pingye'];
      echo $array['name']; //output pingye
      

      在Go中的操作是一樣的,與PHP不同的是,如果取了不存在的key,Go中默認輸出空值,在PHP中就會產(chǎn)生warning警告。

      array := map[string]string{
      	"name": "pingye",
      	"sex":  "1",
      	"age":  "10",
      }
      fmt.Print(array["name"]) //pingye
      

      映射元素的刪除

      在PHP中的unset可以刪除任何你想刪除的數(shù)組元素,非常好用。

      $array = [
      	'name' => '平也',
      	'sex' => '1',
      	'age' => '10'
      ];
      unset($array['name']);
      print_r($array);
      
      //output
      Array
      (
          [sex] => 1
          [age] => 10
      )
      

      在Go中通過delete函數(shù)來刪除map中的元素。

      array := map[string]string{
      	"name": "pingye",
      	"sex":  "1",
      	"age":  "10",
      }
      delete(array, "name")
      fmt.Print(array) //output map[age:10 sex:1]
      

      清空map元素

      在PHP中好像從來沒有注意過是否把數(shù)組清空,很抱歉,我能想到的清空數(shù)組方法就是把空數(shù)組賦值給它。

      $array = [
      	'name' => '平也',
      	'sex' => '1',
      	'age' => '10'
      ];
      $array = [];
      print_r($array);
      //output
      Array
      (
      )
      

      然而,在Go中也沒有提供清空map的函數(shù),重新make一個map就行了,原來的map會被Go的垃圾回收機制清除掉,甚至比寫一個清空的函數(shù)效率還高。以上是PHP與Go在map映射方面的區(qū)別于聯(lián)系,如果感興趣可以自行了解嘗試。

      posted @ 2019-06-14 13:57  MARIOOW  閱讀(1435)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 少妇人妻偷人精品系列| 午夜福利在线永久视频| av午夜久久蜜桃传媒软件| 欧美喷潮最猛视频| 日本伊人色综合网| 午夜福利在线观看入口| 宜丰县| 国产不卡的一区二区三区| 国内不卡一区二区三区| 国产人妇三级视频在线观看| 四虎在线播放亚洲成人| 免费A级毛片无码A∨蜜芽试看| 国产精品自拍午夜福利| 亚洲最大中文字幕无码网站| 亚洲国产日韩a在线亚洲| 国产视频有码字幕一区二区| 欧美日韩免费专区在线观看 | 国产影片AV级毛片特别刺激| 安阳县| 国产 麻豆 日韩 欧美 久久| 乱人伦中文视频在线| 末成年娇小性色xxxxx| 国产久爱免费精品视频| 精品国产中文字幕第一页| 色老头亚洲成人免费影院| 久久a级片| 欧美和黑人xxxx猛交视频| 9久久伊人精品综合| 国产精品有码在线观看| 大乳丰满人妻中文字幕日本 | 欧美一区二区三区性视频| 麻豆国产传媒精品视频| 蜜臀98精品国产免费观看| 亚洲中文一区二区av| 国产精品呻吟一区二区三区| 天堂网在线观看| 亚洲欧美高清在线精品一区二区| 偷窥少妇久久久久久久久| 国产成人精品午夜二三区| 欧洲亚洲精品免费二区| 亚洲精品成人无限看|