Tôi đang cố gắng tìm ra một cách để khởi tạo một băm mà không cần phải đi qua một vòng lặp. Tôi đã hy vọng sử dụng lát cho điều đó, nhưng nó dường như không tạo ra kết quả mong đợi.Làm cách nào để khởi tạo các giá trị trong băm không có vòng lặp?
Xét đoạn mã sau:
#!/usr/bin/perl
use Data::Dumper;
my %hash =();
$hash{currency_symbol} = 'BRL';
$hash{currency_name} = 'Real';
print Dumper(%hash);
này không làm việc như mong đợi và cho kết quả sau:
$VAR1 = 'currency_symbol';
$VAR2 = 'BRL';
$VAR3 = 'currency_name';
$VAR4 = 'Real';
Khi tôi cố gắng sử dụng lát như sau, nó không hoạt động:
#!/usr/bin/perl
use Data::Dumper;
my %hash =();
my @fields = ('currency_symbol', 'currency_name');
my @array = ('BRL','Real');
@hash{@array} = @fields x @array;
Đầu ra là:
$VAR1 = 'currency_symbol';
$VAR2 = '22';
$VAR3 = 'currency_name';
$VAR4 = undef;
Rõ ràng là đã xảy ra sự cố.
Vì vậy, câu hỏi của tôi sẽ là: cách thanh lịch nhất để khởi tạo băm cho hai mảng (khóa và giá trị) là gì?
Cảm ơn - hoàn hảo! – emx