【问题标题】:Mapping array additionally to existing hash in Perl将数组另外映射到 Perl 中的现有哈希
【发布时间】:2019-05-11 11:01:14
【问题描述】:

如何在现有哈希中添加元素,如推入数组但使用映射?

如果我这样做:

%existing_hash = map { $_ => 1 } @new_elements;

这会重置 %existing_hash。

【问题讨论】:

    标签: perl hash hashmap


    【解决方案1】:

    试试:

    %existing_hash = (%existing_hash, map { $_ => 1 } @new_elements);
    

    【讨论】:

      【解决方案2】:

      我想我会用简单的方法来做:

      $existing_hash{$_} = 1 for @new_elements;
      

      但您也可以使用哈希切片:

      @existing_hash{@new_elements} = (1) x @new_elements;
      

      【讨论】:

      • 您的第一个解决方案也很有效,而且看起来很简单,感谢您的好主意。
      猜你喜欢
      • 2011-10-04
      • 2011-08-11
      • 2017-12-23
      • 2012-08-05
      • 1970-01-01
      • 2011-02-26
      • 2011-11-30
      • 1970-01-01
      • 2012-03-23
      相关资源
      最近更新 更多