Perl-09—雜湊變數

來源:互聯網
上載者:User

一、雜湊變數

雜湊變數又稱關聯陣列;與普通的數組一樣,也可以使用下標來訪問其中的資料元素;不同的是,雜湊變數的下標不僅僅可以是非負整數,而且也可以是其它類型的簡單變數或變數值,也就是說,雜湊變數的下標索引可以是任意類型的簡單變數或變數值,稱為關鍵字;雜湊變數以字元“%”開頭;每個關鍵字都與一個值對應;

雜湊變數的建立有兩種方式:使用數組的建立方式和通過關聯運算子“=>”的方式;

%Hash  =  (Key1,Value1,Key2,Value2,Key3,Value3,Key4,Value4,... ,KeyN,ValueN);

%Hash  =  (Key1=>Value1,Key2=>Value2,Key3=>Value3,Key4=>Value4,... ,KeyN=>ValueN);

使用第一種方式的時候,數組中的元素結構一定必須是Key-Value對,數組元素的數量一定是偶數的;第二種方式也遵循這個規則,但是使用符號“=>”可使程式更易懂;

雜湊變數的關鍵字Key是一個直接數,通常使用最多的就是用字串直接數來作為雜湊變數的關鍵字,也可以使用數字作為雜湊變數的關鍵字;

雜湊變數的單元值用以“$”開頭的標量變數讀取;Perl中,為了區分引用雜湊變數單元值和陣列變數單元值,在單元索引周圍使用不同的符號;雜湊變數的下標可以是任何簡單值或標量值,所以,雜湊變數在單元索引周圍使用一對花括弧“{}”來標記,而普通的數組則是使用一對方括弧“[]”來標記;

二、雜湊變數的操作函數

1、@KeyList  =  keys(%Hash):返回雜湊變數%Hash中的所有關鍵字,以列表的方式返回;

2、@ValueList  = values(%Hash):返回雜湊變數%Hash中所有的值,以列表的方式返回;

3、($Key,$Value)  =  each(%Hash)函數:用於返回雜湊變數%Hash中的一個Key-Value對,以列表的方式返回;

      這個函數常用於迴圈中遍曆雜湊遍曆中的元素,這種方式是最簡單的方式;如:

      while(($Key,$Value)  =  each(%Hash))

      {

          #各種操作......

      }

4、$RetDelete  =  delete($Hash{Key}):用於刪除雜湊變數%Hash中指定的元素,並把它作為傳回值;

      注意:一定要使用delete()函數來刪除雜湊變數中的元素,這是唯一的做法;不要嘗試使用push() 、pop()、shift()、unshift()等函數對雜湊變數進行操作,因為雜湊變數中元素的位置是隨即的;

5、exists()函數:用於判斷雜湊變數中是否存在某個元素,若存在,則返回非零值(真),否則返回零值(假);如:

      if(exists($Hash{Key}))

      {

          printf("Key  Exists/n");

      }

      else

      {

         printf("Key  doesn't  Exists/n");

      }

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.