Bermula dengan ...LOG MASUK
Bermula dengan Perl
pengarang:php.cn  masa kemas kini:2022-04-14 16:05:12

Perl hash


Cincang ialah koleksi pasangan kunci/nilai.

Pembolehubah cincang dalam Perl bermula dengan tanda peratus (%).

Akses format elemen cincang: ${key}.

Berikut ialah contoh cincangan mudah:

#!/usr/bin/perl

%data = ('google', 'google.com', 'php', 'php.cn', 'taobao', 'taobao.com');

print "$data{'google'} = $data{'google'}\n";
print "$data{'php'} = $data{'php'}\n";
print "$data{'taobao'} = $data{'taobao'}\n";

Laksanakan atur cara di atas, hasil output ialah:


Buat Ha Hash

boleh dibuat dalam dua cara berikut:

1. Tetapkan nilai

$data{'google'} = 'google.com';
$data{'php'} = 'php.cn';
$data{'taobao'} = 'taobao.com';

untuk setiap kunci 2. Tetapkan

senarai melalui senarai elemen pertama dalam adalah kunci dan yang kedua ialah nilai.

%data = ('google', 'google.com', 'php', 'php.cn', 'taobao', 'taobao.com');

Anda juga boleh menggunakan simbol => untuk menetapkan kunci/nilai:

%data = ('google'=>'google.com', 'php'=>'php.cn', 'taobao'=>'taobao.com');

Contoh berikut ialah varian contoh di atas, gunakan - Daripada tanda petikan:

%data = (-google=>'google.com', -php=>'php.cn', -taobao=>'taobao.com');

Menggunakan kaedah ini, ruang tidak boleh muncul dalam kekunci Cara membaca elemen ialah:

$val = %data{-google}
$val = %data{-php}

Akses elemen cincang

.

Akses format elemen cincang: ${key}, contohnya adalah seperti berikut:

#!/usr/bin/perl

%data = ('google'=>'google.com', 'php'=>'php.cn', 'taobao'=>'taobao.com');

print "$data{'google'} = $data{'google'}\n";
print "$data{'php'} = $data{'php'}\n";
print "$data{'taobao'} = $data{'taobao'}\n";

Jalankan program di atas, hasil output ialah:


Baca Nilai cincang

Anda boleh mengekstrak nilai daripada cincang sama seperti tatasusunan.

Nilai cincang diekstrak ke dalam format sintaks tatasusunan: @{key1,key2}.

#!/uer/bin/perl


%data = (-taobao => 45, -google => 30, -php => 40);

@array = @data{-taobao, -php};

print "Array : @array\n";

Laksanakan program di atas, hasil output ialah:

Array : 45 40

Baca kunci cincang dan nilai

Baca semua kunci

Kami Anda boleh menggunakan fungsi kunci untuk membaca semua kunci cincang Format sintaks adalah seperti berikut:

keys %HASH

Fungsi ini mengembalikan tatasusunan semua kunci semua cincang.

#!/usr/bin/perl 

%data = ('google'=>'google.com', 'php'=>'php.cn', 'taobao'=>'taobao.com');

@names = keys %data;

print "$names[0]\n";
print "$names[1]\n";
print "$names[2]\n";

melaksanakan program di atas, dan hasil output ialah:

taobao
google
php

Begitu juga, kita boleh menggunakan fungsi nilai untuk membaca semua nilai cincang. Format sintaks adalah seperti berikut:

values %HASH

Fungsi ini mengembalikan tatasusunan semua nilai semua cincangan.

#!/usr/bin/perl 

%data = ('google'=>'google.com', 'php'=>'php.cn', 'taobao'=>'taobao.com');

@urls = values %data;

print "$urls[0]\n";
print "$urls[1]\n";
print "$urls[2]\n";

Laksanakan atur cara di atas, hasil output ialah:

taobao.com
php.cn
google.com

Kesan sama ada elemen itu wujud

Jika anda membaca pasangan kunci/nilai yang tidak wujud dalam hash , akan mengembalikan nilai undefined dan akan ada amaran apabila melaksanakan.

Untuk mengelakkan situasi ini, kita boleh menggunakan fungsi wujud untuk menentukan sama ada kunci itu wujud Apabila ia wujud, baca:

#!/usr/bin/perl

%data = ('google'=>'google.com', 'php'=>'php.cn', 'taobao'=>'taobao.com');

if( exists($data{'facebook'} ) ){
   print "facebook 的网址为 $data{'facebook'} \n";
}
else
{
   print "facebook 键不存在\n";
}

Jalankan program di atas, dan hasil keluarannya ialah:

facebook 键不存

Dalam kod di atas, kami menggunakan pernyataan JIKA...ELSE, yang akan kami perkenalkan secara terperinci dalam bab berikut.


Dapatkan saiz cincang

Saiz cincang ialah bilangan elemen Kita boleh mendapatkan cincang dengan mula-mula mendapatkan semua tatasusunan elemen kunci atau nilai, dan kemudian mengira nombor daripada elemen tatasusunan Saiz ini dilakukan melalui tugasan mudah. Tetapi untuk memadamkan elemen cincang, anda perlu menggunakan fungsi

padam

:

#!/usr/bin/perl

%data = ('google'=>'google.com', 'php'=>'php.cn', 'taobao'=>'taobao.com');

@keys = keys %data;
$size = @keys;
print "1 - 哈希大小: $size\n";

@values = values %data;
$size = @values;
print "2 - 哈希大小: $size\n";

Laksanakan atur cara di atas, hasil keluarannya ialah:

1 - 哈希大小: 3
2 - 哈希大小: 3